服务器购买推荐:
点击直达 腾讯云服务器
点击直达 海外服务器
点击直达 阿里云服务器
搭建环境
- 系统
Ubuntu20.04
- 域名一枚,并做好解析到服务器上
- 安装好
Docker、Docker-compose
:相关教程
RssHub
源的获取
RSSHub
是一个开源、简单易用、易于扩展的RSS
生成器,可以给任何奇奇怪怪的内容生成RSS
订阅源。RSSHub
借助于开源社区的力量快速发展中,目前已适配数百家网站的上千项内容
由于RSSHUB
主站国内无法访问,我准备使用腾讯云服务器上的宝塔面板,利用方便的docker-compass
自行搭建。
部署RSSHUB
下载 docker-compose.yml
:
wget https://raw.githubusercontent.com/DIYgod/RSSHub/master/docker-compose.yml
创建 volume
持久化 Redis
缓存
docker volume create redis-data
启动
docker-compose up -d
命令中的up
是“运行”,-d
命令代表后台运行。上文提到可以手动下载xml,保存至文件夹内(举例:新建一个叫rsshub
的文件夹,把docker-compose.yml
上传进去),在rsshub
文件夹内运行这个命令。
现在,使用docker ps命令可以显示rsshub
的实例已经运行,浏览器通过 http://IP地址:1200
就可以访问了,当然你需要在服务器供应商的控制面板内开放1200这个端口。
如果想更改默认的端口,安装前编辑docker-compose.yml
中“1200:1200”中前面一个1200到你想要的端口即可。
如果部署完成后,又想修改端口怎么做?
我们可以进入之前存放docker-compose.yml
的文件夹,终端运行命令
docker-compose down
来停止RSSHUB
的运行,再编辑docker-compose.yml
中的端口,编辑完成后再启动就可以了。这也是使用docker-compose
部署的方便之一。
更新
删除旧容器:
docker-compose down
如果之前已经下载 / 使用过镜像,下方命令可以帮助你获取最新版本:这可能可以解决一些问题!
docker pull diygod/rsshub
docker-compose up -d
部署Tiny Tiny RSS
(第一种)
关于Tiny Tiny RSS
的介绍,少数派文章已经很多了,类似软件还有FreshRSS、miniflux
,在少数派站点里也有很多介绍这两者的文章。刚好目前TTRSS也推荐使用docker-compose
搭建。
官方指南和问答见此!
安装
git clone https://git.tt-rss.org/fox/ttrss-docker-compose.git ttrss-docker
从官方获取ttrss
的拷贝,存入“root/ttrss-docker”
目录
首先使用文件夹终端运行
copy .env-dist .env
将.env-dist
文件拷贝为.env
我们将在.env
文件中进行配置,打开.env
文件,可以看到如下代码:
我们需要修改TTRSS_SELF_URL_PATH
和HTTP_PORT
字段
TTRSS_SELF_URL_PATH=http://IP地址:181/tt-rss
HTTP_PORT=181
这里由于我不使用反向代理,在HTTP_PORT
字段中删除了127.0.0.1:
这里我使用的端口是181,你可以更改成你想要的端口并在服务器上开放此端口,注意文件中#后面是注释,需要修改的是不带#的字段
修改完成后保存,继续使用文件夹内的终端运行:
docker-compose pull && docker-compose up -d
你可以通过环境变量配置,配置文档见此。
例如:需要设置SELF_URL_PATH,将下列字段添加到.env文件中:
TTRSS_SELF_URL_PATH=http://example.com/tt-rss
另外,你可以在tt-rss
根目录下创建config.php
,使用下列语法。
putenv('TTRSS_DB_HOST=myserver');
putenv('TTRSS_SELF_URL_PATH=http://example.com/tt-rss');
putenv('TTRSS_SESSION_COOKIE_LIFETIME='. (86400*30))。
注意数值周围没有引号。选项应该总是以TTRSS_
为前缀。不要修改 classes/config.php
。你不需要把所有的东西都放到config.php
中,只需要把你从默认值中改变的选项放进去。
安装插件
对于官方的插件,在TTRSS
界面中进入偏好设置→插件,即可勾选启用自带的插件或安装新的插件。
对于第三方插件,在《如何搭建属于自己的 RSS 服务,高效精准获取信息》文章中有详细教程,这里不赘述,但是根据官网文档,提供更简单方便的一种方法:
运行命令:
docker volume inspect ttrss-docker_app | grep Mountpoint
这可以获取ttrss
的volume
文件路径,进入此路径,找到plugins.local
文件夹,将下载的插件文件夹上传,就可以使用图形界面替代命令行,方便的安装插件了。
部署Tiny Tiny RSS
(第二种)
# 创建 ttrss 目录并进入
mkdir ttrss && cd ttrss
# 利用 curl 下载 ttrss 的 docker-compose 配置文件至服务器
curl -fLo docker-compose.yml https://github.com/HenryQW/Awesome-TTRSS/raw/master/docker-compose.yml
利用 curl
下载 ttrss
的 docker-compose
配置文件至服务器可能会报错,大家可以直接在宝塔面板找到对应的文件夹下,然后新建docker-compose.yml
文件,复制下面的内容进去:
version: "3"
services:
service.rss:
image: wangqiru/ttrss:latest
container_name: ttrss
ports:
- 181:80
environment:
- SELF_URL_PATH=http://localhost:181/ # please change to your own domain
- DB_PASS=ttrss # use the same password defined in `database.postgres`
- PUID=1000
- PGID=1000
volumes:
- feed-icons:/var/www/feed-icons/
networks:
- public_access
- service_only
- database_only
stdin_open: true
tty: true
restart: always
service.mercury: # set Mercury Parser API endpoint to `service.mercury:3000` on TTRSS plugin setting page
image: wangqiru/mercury-parser-api:latest
container_name: mercury
networks:
- public_access
- service_only
restart: always
service.opencc: # set OpenCC API endpoint to `service.opencc:3000` on TTRSS plugin setting page
image: wangqiru/opencc-api-server:latest
container_name: opencc
environment:
- NODE_ENV=production
networks:
- service_only
restart: always
database.postgres:
image: postgres:13-alpine
container_name: postgres
environment:
- POSTGRES_PASSWORD=ttrss # feel free to change the password
volumes:
- ~/postgres/data/:/var/lib/postgresql/data # persist postgres data to ~/postgres/data/ on the host
networks:
- database_only
restart: always
# utility.watchtower:
# container_name: watchtower
# image: containrrr/watchtower:latest
# volumes:
# - /var/run/docker.sock:/var/run/docker.sock
# environment:
# - WATCHTOWER_CLEANUP=true
# - WATCHTOWER_POLL_INTERVAL=86400
# restart: always
volumes:
feed-icons:
networks:
public_access: # Provide the access for ttrss UI
service_only: # Provide the communication network between services only
internal: true
database_only: # Provide the communication between ttrss and database only
internal: true
修改 docker-compose.yml
里面的内容:
在配置文件中,将PostgreSQL
数据库的默认密码进行修改。暴露在公网的数据库使用默认密码非常危险。
在配置文件中,将 Tiny Tiny RSS
服务的部署网址修改为我们实际的部署网址。比如我的部署网址是 :https://xxxx.xxxx.com
注意,如果你的部署 URL
包含端口(默认部署端口为 181 端口),那么这里的 UR
L 也需要加上端口号,格式为 {网址}:{端口}不过不必担心,如果你这里的 URL
配置不正确,那么访问 Tiny Tiny RSS
的时候,Tiny Tiny RSS
会提醒你修改这里的值为正确的 URL
,按照提醒进行配置即可.
之后,我们保存配置文件,启动 Tiny Tiny RSS
服务。在刚刚的 ttrss
目录下执行:
docker-compose up -d
如果发现问题,修改docker-compose
的配置文件后,需要执行下面的命令重启Docker
容器们:
注意docker-compose
命令要在docker-compose.yml
文件下运行!
# 关闭 Docker 容器们
docker-compose down
# 删除已停止的 Docker 容器
docker-compose rm
# 再次开启 Docker 服务
docker-compose up -d
项目预览
反向代理
Nginx Proxy Manager 一款Nginx可视化面板
利用宝塔面板反向代理
新建一个站点,不要数据库,不要php,纯静态
然后打开下面的配置,修改Nginx的配置
注释掉上图内容
添加下列代码:
location / {
proxy_pass http://127.0.0.1:181/;
rewrite ^/(.*)$ /$1 break;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade-Insecure-Requests 1;
proxy_set_header X-Forwarded-Proto https;
}
如何在多平台阅读
API务必开启,后续我们会在电脑和手机上安装软件来阅读内容.
启用一下插件:打来偏好设置–插件
配置全文阅读插件,输入service.mercury:3000
:
配置繁简转换插件,输入service.opencc:3000
:
这里推荐一个神级项目:RSSHub
在网站的域名最后加上atom.xml
或者rss
,大概率就是对应的rss
地址,比如我的博客域名是https://achenwanjia.eu.org/
,我的rss
地址就是https://achenwanjia.eu.org/atom.xml
配置Reeder5
打开Tiny Tiny RSS–偏好设置–Fever Emulation设置密码:
server
的话填前面我们的那个地址,例如:https://xxxxx.com/plugins/fever/
;
email
填用户名,默认的admin
;
password
密码填前面API设置过的密码。
然后就能成功登陆了。
然后就可以愉快的玩耍了!
一键脚本
wget https://raw.githubusercontent.com/stilleshan/rssforever/main/install.sh && chmod +x install.sh && ./install.sh
默认账户:
admin
默认密码:password
评论区