刷了几个月的短视频和新闻App,越来越觉得不对劲——算法推什么我就看什么,信息茧房越缩越小。以前用RSS订阅博客的习惯早就丢了,这次趁着雨云那台2核2G的香港VPS闲着,用宝塔面板的Docker管理器搭了个FreshRSS,把感兴趣的博客、科技站点、独立作者全塞进去,重新找回主动阅读的感觉。
自建RSS好处
市面上有免费的RSS服务,比如Inoreader、Feedly,但免费版限制太多——订阅源数量有限、刷新慢、还有广告。付费版一个月几十块,算下来比我这台服务器年费还贵。
自建的好处很明显:
- 数据在自己手里:所有订阅记录、阅读历史都在自己的服务器上,不用担心服务商倒闭跑路
- 完全免费:一次性部署,后续没有订阅费
- 访问速度快:雨云香港节点延迟50ms左右,打开秒加载
- 没广告没推荐:干干净净只看自己订阅的内容
FreshRSS是我挑了一圈之后的选择,PHP写的,对资源要求极低,界面简洁,支持移动端自适应,还有配套的Android和iOS客户端。
准备工作
服务器我选择雨云服务器
优惠码:Nzc0OTI0
如果你还没装宝塔,雨云的系统镜像里可以直接选,装好后在安全组放行8888端口就行。宝塔的Docker管理器是这次部署的主力工具,全程鼠标操作。
第一步:安装Docker管理器
登录宝塔面板,左侧菜单找到"Docker"。如果没安装过,点击一键安装,等两三分钟就好。装完之后界面会显示当前服务器的容器、镜像、网络等信息。

安装完成后点击进入到Docker页面搜索freshrss

配置页面默认即可

等待安装完成后
浏览器打开https://IP:16430,FreshRSS的安装界面会自动出现。需要填几个东西:
- 数据库:选择SQLite(轻量级,不需要额外装MySQL,适合2核2G的小机器)
- 管理员账号:设置用户名和密码,记好了
- 语言:选中文
点击安装,几秒钟就完成了。SQLite方案对资源消耗极低,整站跑起来内存占用不到50MB。
第六步:导入订阅源
安装完成之后登录进去,界面非常干净。左侧是分类,中间是文章列表,右侧是阅读区。
开始添加订阅源,点击"订阅管理" -> "添加订阅",输入RSS地址就行。我整理了一批:
技术类:
- 阮一峰的网络日志
- 酷壳(虽然停更了但老文章值得看)
- V2EX热门主题
- 少数派
独立博客:
- 自己朋友的几个个人博客
- 一些技术圈独立作者
资讯类:
- 果壳网
- 知乎每日精选
总共订阅了三十多个源,每天自动抓取,打开就能看到所有更新,不用挨个网站去翻。
FreshRSS还支持导入OPML文件,如果你之前用过其他RSS阅读器,直接导出再导入,所有订阅源一键迁移。
移动端阅读
FreshRSS有配套的移动客户端,我手机装了FeedMe(Android),配置好服务器地址和账号密码,就能在手机上同步阅读了。界面原生,体验比网页版流畅,地铁上刷文章很方便。
iOS用户可以用Reeder或者Fiery Feeds,都支持FreshRSS的API。
设置方法很简单,在FreshRSS设置里开启"API",获取API地址,然后在客户端填上就行。整个过程两分钟。
实际使用感受
部署好之后用了半个多月,说几个真实感受:
阅读效率提升明显:以前刷信息流,刷半小时也看不到几条有价值的东西。现在每天打开FreshRSS,几十条更新全是自己筛选过的源,十分钟看完,信息密度高得多。
资源占用极低:SQLite模式的FreshRSS跑起来,容器内存占用40-50MB,CPU几乎为0。我那台2核2G的雨云机器上已经跑了博客、知识库、导航页、Uptime Kuma,再加这个RSS,五个容器一起跑,内存总占用1.3G左右,CPU常年个位数。
自动抓取稳定:环境变量里设置了CRON_MIN=*/20,每20分钟自动抓取一次新文章。我观察了几天,基本文章发布后半小时内就能同步过来,速度满意。
数据完全可控:所有订阅列表、阅读状态、星标文章都存在 /opt/freshrss/data 目录里。上周手贱把容器删了重装,挂载同样的目录,所有数据都在,登录进去之前读过的文章还是已读状态,完全无损。
备份方案
数据目录在 /opt/freshrss/data,宝塔文件管理器里直接右键压缩就能备份。我设置了每周自动备份到本地,压缩包才十几MB,不占空间。
万一服务器出问题,换台新机器,装好宝塔和Docker,把备份解压到 /opt/freshrss/data,重新创建容器,所有订阅和阅读记录都在,不需要重新配置。
还能折腾点什么
FreshRSS的功能其实比想象中多:
- 过滤规则:可以设置关键词过滤,比如不想看某个话题的文章,自动标记为已读
- 扩展插件:支持GitHub上的第三方插件,比如自动翻译、分享到社交媒体
- 多用户:可以开多个账号给家人朋友用,每个账号独立的订阅列表
我最近在研究它的API,想把阅读数据接出来做个年度报告——看了多少篇文章、哪些源产出最多,挺有意思的。
Comments NOTHING