Skip to content

本项目为 Nginx TTRSS / FreshRSS RSSHub 整合 docker 容器化快速一键部署方案.

Notifications You must be signed in to change notification settings

iSylleo/rssforever

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rssforever

简介

本项目为 Nginx TTRSS / FreshRSS RSSHub Watchtower ACME 整合 docker 容器化快速一键部署方案,支持一键脚本快速安装部署.

一键安装脚本已同时支持 X86 和 ARM 架构

前言

rssforever.com 为网友提供免费的 RSS 和 RSSHub 服务,由于个人精力,服务器压力等因素,无法保证服务的稳定性,所以尽我所能开启这个项目来为新手用户提供一键部署技术支持,特将 Nginx TTRSS / FreshRSS RSSHub Watchtower ACME 整合到 docker compose 中,并编写脚本,实现一键部署使用.

特点

  1. 本项目针对新手用户,提供整合配置,无需繁琐的设置,即使是新手用户最快也只需要几步操作,几分钟即可部署使用.
  2. 使用 docker compose 编排配置,所有命令,配置及环境变量集中管理,方便维护和迁移.
  3. 更换服务器也仅需打包备份一个文件夹,迁移解压后一条命令即可恢复使用.

一键安装脚本支持以下八种模式,请根据自身情况选择:

  1. Nginx TTRSS RSSHub Watchtower ACME 自动申请和续签证书并开启 HTTPS 模式
  2. Nginx TTRSS RSSHub Watchtower 无证书 HTTP 模式
  3. Nginx TTRSS ACME 自动申请和续签证书并开启 HTTPS 模式
  4. Nginx TTRSS 无证书 HTTP 模式
  5. Nginx FreshRSS RSSHub Watchtower ACME 自动申请和续签证书并开启 HTTPS 模式
  6. Nginx FreshRSS RSSHub Watchtower 无证书 HTTP 模式
  7. Nginx FreshRSS ACME 自动申请和续签证书并开启 HTTPS 模式
  8. Nginx FreshRSS 无证书 HTTP 模式

环境需求

  • 境外 VPS 服务器 ( 国内服务器网络不佳,可能导致无法下载脚本, clone 仓库, docker 拉取等问题 )
  • 拥有自己的域名 ( 托管与 腾讯云 / 阿里云 / Cloudflare 方便申请证书 )
  • 服务器未占用 80/443 端口
  • 服务器已安装 docker 和 docker compose 环境 ( 未安装可参考下文简易安装指南 )

本项目不支持已被其他服务占用 80/443 端口的服务器.请停止相关服务或更换新服务器部署使用.
此项目最多一共会启动 10 个容器,建议 2C2G 及以上配置.
如果服务器上已有 nginx 等占用 80/443 端口的服务,同时又有部署的需求,请联系我进行付费技术支持.

安装

更新

  • 2024-04-18 更新至最新版本.
  • 2022-01-06 更新脚本支持 FreshRSS, 老版本已转移至ttrss-rsshub分支,同样也可以继续使用.
  • 2021-07-01 更新一键安装脚本同时支持 X86 和 ARM 架构.
  • 2021-06-18 更新一键安装脚本.

前期准备

  • 准备 RSS 和 RSSHub 域名并解析至服务器
  • 参考 Wiki 页面 获取域名 DNSAPI 以便脚本申请证书

执行脚本

wget https://raw.githubusercontent.com/stilleshan/rssforever/main/install.sh && chmod  x install.sh && ./install.sh

使用

TTRSS

默认账户: admin
默认密码: password

FreshRSS

FreshRSS 首次访问需要设置数据库类型,选择PostgreSQL:

  • 数据库类型:PostgreSQL
  • 主机:db(不要随意修改,这里的主机名 db 已在 docker-compose.yml 中定义为服务名)
  • 数据库用户名:freshrss(不要随意修改,这里的用户名已在 docker-compose.yml 中定义)
  • 数据库密码:脚本随机生成在rssforever目录下的.envPOSTGRES_PASSWORD变量的值rssforever.com-xxxxx为数据库密码
  • 数据库:freshrss(不要随意修改,这里的数据库名已在 docker-compose.yml 中定义)
  • 表前缀:可留空或填写freshrss_

snapshot01.jpg

更新镜像

本项目配置有Watchtower来监控部分容器的镜像更新.
Nginx / TTRSS / FreshRSS 的版本在.env文件中定义,请谨慎修改更新.
如需更新,建议先行备份rssforever目录,再执行docker-compose down停止服务,修改版本号后再次执行docker-compose up -d启动服务.

更新证书

证书每月1日自动更新,请执行以下命令来定时每月重启nginx服务刷新证书.也可每月手动执行docker-compose restart来重启服务.

crontab -e
# 添加以下计划任务
0 0 2 * * docker restart rssforever-nginx-1
# 为避免时区问题,将在每月 2 号 0 点执行

备份恢复

备份

本项目采用 docker compose 部署,所有配置及数据都在rssforever目录中,方便备份和迁移. rssforever 目录下的文件如不清楚请不要随意修改和删除,否则会导致服务无法启动.

cd rssforever
# 进入目录
docker-compose down
# 停止所有服务
# 手动将整个 rssforever 目录迁移至新服务

恢复

将域名重新指向新服务器,将备份的rssforever目录解压进入启动即可.

cd rssforever
# 进入目录
docker-compose up -d
# 启动

其他

感谢

感谢以下大神提供的项目:

链接

About

本项目为 Nginx TTRSS / FreshRSS RSSHub 整合 docker 容器化快速一键部署方案.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 98.8%
  • HTML 1.2%