使用 Railway 和 Miniflux 零成本搭建 RSS 服务
Railway:不休眠的 PaaS 平台
- 虽然本文的目的是 0 成本搭建,但也并不意味着我们就要因此妥协使用体验。这时候我们可以把目光转向另一个 PaaS 平台:Railway

- 这是一个 2020 年成立的 PaaS 平台,无需信用卡的免费版可以提供 5 美元的额度,如果绑定信用卡则每个月可以使用 10 美元的额度,用户仅需支付超过该额度的使用费,对于普通个人用户而言,5 美元的额度早就足够。
- 更重要的是,它支持数据库和 Docker,所以比起 Vercel 或 Netlify,它更像是 Heroku 的替代品,更优质的替代品。这就为我们达成 0 成本搭建 RSS 聚合器且不损失使用体验带来了可能。
动手搭建
- 说了这么多,现在让我们开始动手搭建基于 Miniflux+Railway 的专属于自己的 RSS 聚合器。
准备工作
正式开始之前,我们需要准备:
创建稳定版分支
- 由于 Miniflux 的默认分支(master)本身其实是不稳定的开发版,直接部署使用开发版多多少少会遇到各种问题,为了保证服务的稳定性和可用性,故我们还需要单独创建一个稳定版分支。

- 让我们回到 Miniflux 的 GitHub 页面,注意上图标黄的 “Release” 部分,可以看到当前稳定版版本号为
2.0.36
,这也是该 Release 对应的 tag
,记住这个版本号
- 在 GitHub Desktop 打开下载到本地的项目,点击左栏的 “History”,找到带有对应版本号的一栏,右键点击 “Create a branch from commit”,在弹出的窗口中输入新的分支名
stable
并 Create branch
- 完成后,顶部的第三个大按钮会变成 “Publish branch”,点击它使之同步到 GitHub 仓库中。至此,稳定版分支创建完成。

更新稳定版分支
- 如果要更新你的稳定版分支,做法也很简单,首先确定 Miniflux 已经发布了新的稳定版,打开 GitHub Desktop,点击客户端窗口上的 “Current branch”,先从本地删掉
stable
分支,再重复上一节里面的创建稳定版分支的操作即可。
使用 Supabase 数据库
- Miniflux 需要用到 PostgresSQL 作为数据库,虽然 Railway 本身可以直接创建数据库,但为了避免账单爆炸,还是建议使用 Supabase 这类数据库服务。
- 注册完成后,创建一个 Project,数据库位置建议选择美东或者美西,设定并记住数据库密码,等待创建完成。
- 数据库创建好后,进入该 Project,在左侧菜单里面选择 Settings - Database,找到页面的 Connection string
部署到 Railway
- 现在我们可以将稳定版分支部署到 PaaS 平台,比如我们接下来会用到的 Railway。
- 进入 Railway 控制面板,新建项目(New Project)- Deploy from GitHub repo - 绑定 GitHub 账号并选择我们在上一节做好稳定版分支的项目,这时系统会自动开始部署,因为我们还没有设置数据库和环境变量,所以这次部署一定会失败,暂时不需要理会。
- 接着,回到刚刚连接的 GitHub Repo 模块,点击它,在右侧的弹出的窗口,导航到 “Settings” 选项卡,将 “Deployment Trigger” 下面的选项从
master
改为 stable
,即切换为我们在上一节里面增加的稳定版分支。同时,你还可以在 “Service Domains” 里面自定义该服务的域名(免费提供 up.railway.app 子域名),或绑定自己的域名。
- 完成后切换到 “Variables” 选项卡,点击右侧的 “RAW Editor”,将下面的变量按需修改并去掉注释后复制粘贴到文本框内,点击 Update 即可。
DATABASE_URL=上一节复制留存的PostgreSQL链接
PROXY_IMAGES=all
RUN_MIGRATIONS=1
BASE_URL=https://域名,如果你无法自备域名则可以直接填写免费提供的子域名
ADMIN_PASSWORD=管理账户密码
ADMIN_USERNAME=管理账户用户名
CREATE_ADMIN=1
- 提交了环境变量后 Railway 会自动重新部署,可以在 “Deployments” 选项卡里面查看进度。完成后即可登录使用。
- Miniflux 原生支持 Fever 和 Google Reader API,可以在 Miniflux 的设置中启用,这样即可配合相应的 RSS 阅读客户端使用(iOS 推荐 Reeder,Android 推荐 FeedMe)。
- 如果部署后无法使用,log 中提示
app not found
,目前推测原因是 Railway 新使用的 Nixpacks Builder 的问题,在 Railway 里面,点击你的 Miniflux 模块的 Settings,找到 Builder,换成 Heroku,等待重新部署即可。
- 至此,一个简约但不简单的 0 成本 RSS 聚合器就搭建完成了!快去订阅自己喜欢的源享受干净可控的阅读环境吧!
- 有了自己的 RSS 聚合器后,剩余的工作就是寻找并订阅自己喜欢的内容(源)了,这里推荐使用 RSSHub