目的#
主要是为了摆脱 feedly,每次使用都要开启代理,我的手机代理并不是一直开着的。所以自建一个 rss 服务就会比较方便
选择#
现在比较常见的 ttrss,然后配置 fever 插件,其提供的 api 可以在各种客户端使用,例如我用的 Reeder
搭建#
直接用 docker-compose 来启动
- 在 docker 文件夹下创建一个 ttrss 文件夹, 进入后再创建一个 data 文件下,用于存档其他配置
- 创建一个 docker-compose.yml 的配置文件。注意备注,按照备注要求改成自己的数据
version: "3"
services:
database.postgres:
image: sameersbn/postgresql:10 [[特别说明不要使用latest]]
container_name: postgres
environment:
- PG_PASSWORD=PGPS123 # 修改数据库密码
- DB_EXTENSION=pg_trgm
volumes:
- /volume2/docker/ttrss/data/:/var/lib/postgresql/ # 特别注意,套件在哪个volume就填几,volume2是需要修改的值
restart: always
service.rss:
image: wangqiru/ttrss:latest
container_name: ttrss
ports:
- 5005:80
environment:
- SELF_URL_PATH=http://yourIP:5005/ # 下面7个参数后期可在docker中修改,所以暂时不需要改动
- DB_HOST=database.postgres
- DB_PORT=5432 # 数据库端口,别动它
- DB_NAME=ttrss
- DB_USER=postgres
- DB_PASS=PGPS123 # 上面的密码
- ENABLE_PLUGINS=auth_internal,fever # 默认开启
stdin_open: true
tty: true
restart: always
command: sh -c 'sh /wait-for.sh database.postgres:5432 -- php /configure-db.php && exec s6-svscan /etc/s6/' # 别随便改动,这是容器启动时执行的命令
- ssh 到 nas 上,使用 sudo su 切换到 root 用户权限
- 进入 docker/ttrss 目录,执行
docker-compose up -d
- 此时进入套件 docker 中就可以看到新建的两个 container 了,一个是 postgres 数据库,一个是 ttrss
- 打开配置,修改环境变量,将 SELF_URL_PATH 修改为你外网访问的域名地址 + 端口
- 按照之前说的方法用反向代理来实现 https 的访问,也就是上面设置的端口
- 使用默认的用户名和密码登录,分别是 admin 和 password
- 进入偏好设置
- 修改密码
- 打开 - 允许外部客户端通过 API 来访问该账户
- 进入插件 - fever emulation-- 设置 fever 的访问密码,建议和 ttrss 一样
- 此时可以在设置中导入你之前的 OPML, 将过去的订阅迁移过来
- 最后在 reeder 上登录账号,这里有些小坑,关于其需要的三个参
- 服务地址:可以在插件页面看到,但那个地址是错的。真实的地址是 host/plugins/fever/, 中间是 plugin,而不是 plugin.local
- 邮件地址:这个其实是填写的用户名,这里就是 admin,这个折腾了我好一会儿
- 密码:就是 fever 配置中设的密码
- 最后,这个页面是可以选择不同的主题的,我换成了 feedly 的夜间主题,很养眼
One More Thing#
还有点问题就是,有的 rss 订阅源在墙外,这个需要配置翻墙。
这个只要在 docker 的环境变量中,添加一个参数即可
HTTP_PROXY=192.168.11.X:7890 // 宿主机的局域网IP:http代理的端口号