simon

simon

github

Nas 部署TTRSS+Fever

目的#

主要是為了擺脫 feedly,每次使用都要開啟代理,我的手機代理並不是一直開著的。所以自建一個 rss 服務就會比較方便

選擇#

現在比較常見的 ttrss,然後配置 fever 插件,其提供的 api 可以在各種客戶端使用,例如我用的 Reeder

搭建#

直接用 docker-compose 來啟動

  1. 在 docker 文件夾下創建一個 ttrss 文件夾, 進入後再創建一個 data 文件下,用於存檔其他配置
  2. 創建一個 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/' # 別隨便改動,這是容器啟動時執行的命令
  1. ssh 到 nas 上,使用 sudo su 切換到 root 用戶權限
  2. 進入 docker/ttrss 目錄,執行
docker-compose up -d
  1. 此時進入套件 docker 中就可以看到新建的兩個 container 了,一個是 postgres 數據庫,一個是 ttrss
  2. 打開配置,修改環境變量,將 SELF_URL_PATH 修改為你外網訪問的域名地址 + 端口
  3. 按照之前說的方法用反向代理來實現 https 的訪問,也就是上面設置的端口
  4. 使用默認的用戶名和密碼登錄,分別是 admin 和 password
  5. 進入偏好設置
    1. 修改密碼
    2. 打開 - 允許外部客戶端通過 API 來訪問該賬戶
    3. 進入插件 - fever emulation-- 設置 fever 的訪問密碼,建議和 ttrss 一樣
  6. 此時可以在設置中導入你之前的 OPML, 將過去的訂閱遷移過來
  7. 最後在 reeder 上登錄賬號,這裡有些小坑,關於其需要的三個參
    1. 服務地址:可以在插件頁面看到,但那個地址是錯的。真實的地址是 host/plugins/fever/, 中間是 plugin,而不是 plugin.local
    2. 郵件地址:這個其實是填寫的用戶名,這裡就是 admin,這個折騰了我好一會兒
    3. 密碼:就是 fever 配置中設的密碼
  8. 最後,這個頁面是可以選擇不同的主題的,我換成了 feedly 的夜間主題,很養眼

One More Thing#

還有點問題就是,有的 rss 訂閱源在牆外,這個需要配置翻牆。
這個只要在 docker 的環境變量中,添加一個參數即可

HTTP_PROXY=192.168.11.X:7890 // 宿主機的局域網IP:http代理的端口號
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。