目的#
主要是為了擺脫 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代理的端口號