轉(zhuǎn)自我的個(gè)人博客https://blognas.hwb0307.com号涯。歡迎關(guān)注痰憎!
前言
關(guān)于RSS的介紹這里不再多說牵祟,請(qǐng)看我的另一篇博文:解決信息爆炸困擾的完美方案——RSS陨享。
RSS訂閱器平臺(tái)有很多選擇急膀,大家可以看這個(gè)文章:2022年10款最佳RSS閱讀器推薦(在線/軟件+免費(fèi)/付費(fèi))- 安卓画株、iOS, Windows, Mac, Linux等適用辆飘!。那為什么我還是覺得應(yīng)該有一個(gè)自己的RSS訂閱器平臺(tái)呢谓传?我覺得有以下幾點(diǎn)理由:
- 基于Docker蜈项,自建難度低,遷移性好续挟。
- 自建RSS訂閱器平臺(tái)足夠強(qiáng)大紧卒。有fiter功能等。
- 數(shù)據(jù)完全掌握在自己手中诗祸∨芊迹可通過duplicati備份轴总。
- 無廣告,不擔(dān)心托管平臺(tái)倒閉博个。RSS閱讀器平臺(tái)經(jīng)常會(huì)由于盈利或政策原因關(guān)門怀樟。
- 沒有訂閱數(shù)上限或其它惡心的限制。完全免費(fèi)盆佣。
- 進(jìn)一步壓榨VPS往堡。畢竟有這么多性能溢出!
下面我們搭建一個(gè)RSS平臺(tái)——Tiny Tiny RSS
共耍,即TTRSS
虑灰。基于Fever API征堪,TTRSS
也可完美地適配手機(jī)端(IOS; 安卓應(yīng)該也是類似的)的閱讀瘩缆。
搭建過程中主要參考咕咕:二十分鐘搭建一個(gè)屬于自己的RSS服務(wù)和一些官方文檔〉柩粒總之很容易安裝庸娱。開始吧!
測試環(huán)境
用的騰訊云VPS:
uname -a # Linux VM-12-8-ubuntu 5.4.0-42-generic #46-Ubuntu SMP Fri Jul 10 00:24:02 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
docker --version # Docker version 20.10.5, build 55c4c88
docker-compose --version # docker-compose version 1.28.6, build 5db8d86f
準(zhǔn)備工作
# 工作目錄 按需修改
work=~/docker/tinytinyrss && mkdir -p $work && cd $work
# 防火墻開放端口 按需修改
sudo ufw allow 3894/tcp comment 'tinytinyrss' && sudo ufw reload
# 提前拉取鏡像谐算,國內(nèi)下載速度也蠻快的
docker pull wangqiru/ttrss:latest
docker pull wangqiru/mercury-parser-api:latest
docker pull wangqiru/opencc-api-server:latest
docker pull postgres:13-alpine
配置yml
新建文件:
vim $work/docker-compose.yml
添加以下內(nèi)容:
version: "3"
services:
service.rss:
image: wangqiru/ttrss:latest
container_name: ttrss
ports:
- 3894:80 # 按需修改
environment:
- SELF_URL_PATH=https://rss.domain.com/ # 按需修改
- DB_PASS=ipbufQW8F2 # 按需修改熟尉。與下面的密碼對(duì)應(yīng)
volumes:
- ./feed-icons:/var/www/feed-icons/
networks:
- public_access
- service_only
- database_only
stdin_open: true
tty: true
restart: always
service.mercury:
image: wangqiru/mercury-parser-api:latest
container_name: mercury
networks:
- public_access
- service_only
restart: always
service.opencc:
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=ipbufQW8F2 # 按需修改。與上面的密碼對(duì)應(yīng)
volumes:
- ./db/:/var/lib/postgresql/data
networks:
- database_only
restart: always
networks:
public_access:
service_only:
internal: true
database_only:
internal: true
這里要說明的是洲脂,除了按需修改
的部分斤儿,其它代碼大家盡量不要?jiǎng)铀獾迷诤竺娴脑O(shè)置中出錯(cuò)恐锦。如果你是大神就當(dāng)我沒說吧往果!
上線服務(wù):
cd $work && docker-compose up -d
可以通過這個(gè)命令查看日志:
docker-compose logs -f
改變文件夾的權(quán)限。這一步一定要做一铅,否則TTRSS無法成功啟用陕贮。
sudo chmod 777 $work/feed-icons
重啟應(yīng)用:
docker-compose restart
ddns-go & NPM
ddns-go或者域名托管后臺(tái)里添加域名:rss.domain.com
NPM無特殊設(shè)置。類似于:
初始化
默認(rèn)帳戶:
帳號(hào):admin
密碼:password
第一次登陸進(jìn)行要先改一個(gè)密碼潘飘,用bitwarden生成強(qiáng)密碼:
在用戶這里肮之,點(diǎn)admin:
填入一個(gè)新密碼:
更改新密碼后,重新用新密碼登陸卜录。帳戶信息可用bitwarden保存戈擒。
設(shè)置
我們可以去偏好設(shè)置
那里:
啟用外部API
這一部分的設(shè)置主要是為了讓外部終端(比如手機(jī)的Unread)可以訪問它。畢竟我們很有可能經(jīng)常在手機(jī)上看我們的RSS訂閱艰毒!
開啟Mercucy和opencc功能
開啟Mercucy
是為了可以獲取全文筐高;開啟opencc
是為了中文的簡繁體轉(zhuǎn)換。記得點(diǎn)啟用選擇
生效。這主要是電腦端的優(yōu)化吧凯傲,對(duì)手機(jī)閱讀端而言沒有太多影響犬辰。
啟用Fever API
可以用bitwarden生成一個(gè)密碼并填入Set Password
前面的空格中,記得點(diǎn)擊Set Password
保存冰单。這個(gè)密碼主要是在手機(jī)客戶端通過Fever API訂閱時(shí)需要用幌缝。你也可以設(shè)置得簡單點(diǎn)。不過诫欠,如果你手機(jī)上有bitwarden的話涵卵,密碼再長也無所謂,因?yàn)槟悴恍枰涀∷?/p>
設(shè)置訂閱源插件
我們的docker-compose安裝過程中已經(jīng)內(nèi)置了Mercucy
和opencc
兩個(gè)應(yīng)用荒叼。由于之前在偏好設(shè)置中啟用了Mercucy
和opencc
功能轿偎,所以這里我們要指定它們的應(yīng)用API。
- Mercucy:
- opencc
TTRSS
的設(shè)置和一般軟件設(shè)置的布局不太一樣被廓,剛開始操作時(shí)可能令人摸不著頭腦坏晦。大家多多探索一下,應(yīng)該問題不大嫁乘!
添加分類和信息源
這個(gè)就比較簡單了昆婿,自己摸索一下吧。主要有2個(gè)入口蜓斧,這里直接貼圖仓蛆。
主頁的入口:
偏好設(shè)置中的入口:
不懂的話評(píng)論區(qū)留言。
其它
這里主要分享一些我覺得比較實(shí)用的設(shè)置挎春。
不展開文章
有些訂閱源的正文很長很長看疙,如果你設(shè)置了始終展開文章
,閱讀體驗(yàn)很差直奋。
換主題
如果不喜歡默認(rèn)皮膚能庆,還可以換主題。這個(gè)利好顏控脚线!
比如相味,我將主題改成feedly-cozy
:
實(shí)際效果如下:
看某篇文章時(shí)的效果如下:
感覺棒棒噠!其它主題就沒試過了殉挽。我比較隨意,并不在意這些花里胡哨的東西拓巧。
快捷鍵
像大多數(shù)RSS閱讀器一樣斯碌,TTRSS也有快捷鍵:
我覺得比較實(shí)用的快捷鍵就2個(gè):
-
a+q
:將展開的文章折疊 -
f+q
:將某個(gè)分類的文章全部標(biāo)記為已讀(這個(gè)真的好用!)
IOS客戶端Unread
如果手機(jī)不能很好地閱讀自己的RSS肛度,顯然RSS是沒有靈魂的傻唾。這里通過Unread
,基于Fever的API實(shí)現(xiàn)服務(wù)端的TTRSS調(diào)用。只要是支持Fever API的RSS閱讀器都行冠骄,這個(gè)你自己選吧伪煤!我只說Unread
,是因?yàn)?strong>國服的App Store只有這個(gè)Unread
比較好用凛辣。其它的RSS閱讀器基本都不支持Fever API抱既。我覺得Unread
不是專為國人設(shè)計(jì)的,也不支持中文扁誓,有點(diǎn)不太滿意防泵。大家湊合著用吧!有用過其它的比較好的RSS閱讀器蝗敢,小伙伴們也可以評(píng)論區(qū)留言推薦捷泞。
Unread
的用法如下:
- 地址:
https://rss.domain.com/plugins/fever/
(這里要注意沒有.local
!) - 帳戶:admin
- 密碼:
啟用Fever
時(shí)輸入的那個(gè)密碼。不是登陸密碼寿谴。
下面給個(gè)APP的截圖:
其實(shí)習(xí)慣了也還好锁右。
小結(jié)
大家可以通過duplicati定期備份整個(gè)$work
目錄。
同時(shí)讶泰,我注意到TTRSS還支持api_feedreader
咏瑟、api_newsplus
,所以FeedReader
和News+
應(yīng)該也可以使用峻厚。大家可以試試看响蕴,好像要通過global configuration才可以調(diào)用。反正我有Unread還湊合惠桃,就不折騰了浦夷!大不了轉(zhuǎn)Reeder!
日志
- 2022-05-01:使用了幾天Unread辜王,發(fā)現(xiàn)Unread對(duì)于個(gè)人博客同步的支持較差劈狐,常常爬不到內(nèi)容,也拉不到歷史內(nèi)容呐馆;TTRSS明明是可以爬取到的肥缔。暫無解決方案。
參考
- 知乎:RSS打造完美信息流
- Awesome TTRSS
- 咕咕:二十分鐘搭建一個(gè)屬于自己的RSS服務(wù)
- 自建rss服務(wù)并適配 IOS 移動(dòng)端( TTRSS + Fever )
- 知乎:你必讀的 RSS 訂閱源有哪些汹来?:這里有很多好回答续膳。
本文使用 文章同步助手 同步