0. 使用到的东西1. 部署miniflux1.1 创建一个stable分支1.2 在supabase部署一个postgresql数据库1.3 在railway部署miniflux2. 部署rsshub2.1 使用rsshub官方服务2.2 [可选]通过vercel部署rsshub2.3 rsshub的使用方法3. 一些工具3.1 rss阅读软件3.2 使用RSSHub Radar方便地获得rss链接3.3 获得rss订阅的网站4. 后记参考
0. 使用到的东西
- miniflux:使用go编写的轻量迅速的rss服务器。
- rsshub:rss订阅生成器。为不支持rss网站生成rss订阅。
- railway:部署miniflux。
- vercel:部署rsshub。
整个部署过程非常简单,只需要在railway和vercel上点几下就能部署成功,不需要使用ssh管理服务器。
1. 部署miniflux
先fork miniflux的项目:https://github.com/miniflux/v2
1.1 创建一个stable分支
然后我们需要创建一个stable分支,回溯到发布release的那个commit。因为miniflux的主分支会比release要多代码,我们日常使用会更想要稳定一点。所以等待作者确定最新主分支是没问题的可以发布一个release了,我们部署最新的release版本就好。
创建分支最方便的方法是使用具有图形界面的github desktop。虽然使用命令行也可以,但是使用github desktop会让你方便不少。
下载github desktop后,克隆自己仓库里的miniflux下来
先看一下最新的release版本,https://github.com/miniflux/v2

使用github desktop克隆自己的miniflux下来后,从history中往下滚,找到这个
2.0.37
的commit,右键,从这个commit创建一个分支:
分支名字是
stable
推送到github上:

然后在github自己的仓库就能看到这个新建的分支了:

1.2 在supabase部署一个postgresql数据库
原先我是在railway里部署了一个postgresql数据库,但是数据库是时刻在运行的,一个月的费用将近10刀,即使是有10刀的免费额度,也可能会超费用。所以得换到免费的supabase上。
在supabase上新建账号后,新建一个项目,新建项目时会让你设置密码,这个密码就是数据库的密码。记下来,待会会用到这个密码。

把这个数据库的URL复制下来,把
[YOUR-PASSWORD]
换成上面你设置的密码。注意方括号 []
要删了。最后是形如 :postgresql://postgres:[email protected]:5432/postgres
1.3 在railway部署miniflux
在railway中导入miniflux仓库,进行部署。不需要填任何环境变量,因为我们需要获得生成项目后分配的域名,并且还要给这个项目添加数据库、修改设置。
初次部署会提示失败,这时候项目已经起好了。
修改部署stable分支:

生成一个域名:

把这个生成的域名复制下来。
如果你有自己的域名,可以点击右边的
custom domain
添加自己的域名。[可选] 可能需要把Builder换成Heroku:

railway默认是nixpacks,在我这时候可能是miniflux作者还没写好这个部署配置文件,所以用nixpacks会部署失败。
如果你使用ninxpacks部署没问题那么就不需要更改。
给miniflux填入环境变量:


DATABASE_URL=supabase的postgresql链接 PROXY_IMAGES=all RUN_MIGRATIONS=1 BASE_URL=https://域名,刚刚分配的域名 ADMIN_USERNAME=你的用户名 ADMIN_PASSWORD=你的账户密码 CREATE_ADMIN=1 POLLING_PARSING_ERROR_LIMIT=0
POLLING_PARSING_ERROR_LIMIT的作用是,防止miniflux在3次访问rss失败后,不再自动更新网站。设定为0就是禁止不自动更新网站。
可以看到重新部署就成功了:

打开部署好的miniflux:


可以在settings里修改显示的语言。
2. 部署rsshub
2.1 使用rsshub官方服务
我们可以直接使用rsshub提供的服务,获得生成好的rss订阅,https://github.com/DIYgod/RSSHub。
通过vercel自建也只需要点击鼠标即可,所以建议选择自建分流rsshub官方服务的压力。
2.2 [可选]通过vercel部署rsshub
先fork rsshub,https://github.com/DIYgod/RSSHub。
在vercel点击新建项目,导入rsshub仓库。
不需要填入任何环境变量,点击部署即可:

点击一下即可访问:


2.3 rsshub的使用方法
先去rsshub官方查看链接:https://docs.rsshub.app/
https://rsshub.app/ssmh
然后我们把中间的域名替换成vercel部署的:
https://rssh-ub-tau-one.vercel.app/ssmh
然后去miniflux里面订阅这个链接就行了
3. 一些工具
3.1 rss阅读软件
虽然miniflux网页版已经很够用了,但是使用rss阅读软件会有更好的体验。
- 安卓:FocusReader
- Mac:reeder 5
使用rss阅读器需要在miniflux中开启fever api:

然后在rss阅读器中填入这个链接、用户名和密码。
FocusReader非常地漂亮,精致、流畅,是我见过安卓上最好的rss阅读软件:

FocusReader在酷安商店也有,不使用谷歌商店的话可以在国内商店里搜索下载。
reeder:

3.2 使用RSSHub Radar方便地获得rss链接
一般我们在网站首页可以顶部或者底部能够看到官方提供的rss链接,但是有时候没有显示,但是手动尝试输入这些链接:
https://网站.com/feed https://网站.com/rss.xml
尝试下可能会找到网站的rss订阅链接。
我们也可以安装rsshub提供的浏览器插件,RSSHub Radar,方便得获地rss链接。

rsshub radar可以自动地发现网站的官方rss链接(有一部分rsshub radar会发现不到,因为格式不符合rsshub radar),也会显示rsshub上这个网站相关的rss链接。
3.3 获得rss订阅的网站
在这里可以获取公众号的订阅
在这里可以获取一些网站的全文rss订阅
4. 后记
这次又用到了老朋友vercel和railway,这两个部署平台是太好用了,全程点鼠标就可以部署好。
现在的网站和应用越来越讲究私域流量,不让搜索引擎检索他们的内容,提高你对他们app的粘性。其实这也无可厚非,赚钱嘛。
我不觉得使用rss是很高级的一个行为。只是如果感兴趣的内容分布在几个app里面,例如微信公众号、b站的视频,要想看有没有更新,就得全部应用打开看一次。开放应用通知又天天给你推垃圾运营信息。
使用rss能在一个地方获得通知就方便很多了。
谨记重在阅读,不要订阅了一堆又不看。