使用Tiny Tiny Rss + RSSHub 搭建个人 RSS 服务
我使用的配置是 Tiny Tiny Rss + RSSHub 的组合来满足我的需求,这两天用下来感觉还算不错,但是在配置上的时候坑还不少,索性自己将过程记录下来,给一些需要同学做个参考,也当给自己做个备份了。
起因
我个人平时喜欢浏览很多的内容,然后在一堆信息中寻找一些比较有价值的内容,记录并保存,这样的做法不仅浪费了自己不少精力,还让自己的期眼睛近期总是觉得干涩的要命,早晨起来之后眼睛也是干干的,直到晨跑洗漱后才有所好转。基于这样的问题,我审视了一下我自己的习惯,打算利用RSS来先筛选一遍信息源,减少阅读量,提高高质量内容的占比。
另外一点就是自己之前买过一个服务器,一直用做自己的博客(idtimw.com),感觉稍微有点浪费,想着正好用上,感觉也算是值回票价了。
我使用的配置是 Tiny Tiny Rss + RSSHub 的组合来满足我的需求,这两天用下来感觉还算不错,但是在配置上的时候坑还不少,索性自己将过程记录下来,给一些需要同学做个参考,也当给自己做个备份了。
安装 Tiny Tiny RSS 服务
- 安装
Docker
curl -fsSL https://get.docker.com/ | sh
- 启动
Docker
sudo systemctl start docker
- 查看
Docker
状态
sudo systemctl status docker
显示出类似这样的内容,就说明已经成功运行了。
- 安装
Docker-compose
curl -L https://github.com/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
- 给安装好的
docker-compose
可执行权限
chmod +x /usr/local/bin/docker-compose
- 检查
docker-compose
是否安装成功
docker-compose --version
显示出类似这样的内容,就说明已经安装成功。
- 安装 Tiny Tiny RSS 服务
# 创建 ttrss 目录并进入
mkdir ttrss && cd ttrss
# 利用 curl 下载 ttrss 的 docker-compose 配置文件至服务器
curl -fLo docker-compose.yml https://github.com/HenryQW/Awesome-TTRSS/raw/master/docker-compose.yml
- 修改 数据库 密码(使用
Vim
打开docker-compose.yml
文件),这里可以使用你顺手的编辑器。
# docker-compose.yml
PG_PASSWORD=ttrss # 改成自己设置的密码
DB_PASSWORD=ttrss # 重复设置的密码
SELF_URL_PATH=http://localhost:181/ # 这里改成你最中希望的网址
- 启动Tiny Tiny RSS 服务,在
ttrss
目录下执行
docker-compose up -d
- 检查运行状态
docker ps
我这里是包含了我服务器上的所有在 docker
上的服务,只安装了 ttrss
,那么应该就只会显示 ttrss
相关的服务,并不需要和我的完全一致。
- 如果发现问题,修改
docker-compose
的配置文件之后,执行下列问题
# 关闭 Docker 容器们
docker-compose down
# 删除已停止的 Docker 容器
docker-compose rm
# ……
# 修改 docker-compose 配置文件
# ……
# 再次开启 Docker 服务
docker-compose up -d
安装 RSSHub 服务
剩下的基本逻辑也都差不多,其实我安装的流程和官方文档中展示的一样,没啥特殊的,有兴趣可以直接去官网看看 RSSHub Docs 这里就做简单记录。
- 回到根目录,在目录创建对应的项目文件夹
mkdir rsshub && cd rsshub
- 下载
docker-compose
wget https://raw.githubusercontent.com/DIYgod/RSSHub/master/docker-compose.yml
- 检查是否需要修改的配置
vim docker-compose.yml #记住对应的端口
- 创建 volume 持久化 Redis 缓存
docker volume create redis-data
- 启动
docker-compose up -d
安装 Caddy 设置 Docker 容器的反向代理
如果所有的服务都直接暴露在外面还是挺危险的,这里我使用了 Caddy
服务来给我的服务设置了反向代理,同理 Nginx
也是可以,但我觉得 Caddy
的设置更加简单,所以就用它了。
如果没啥问题,之前的内容在输入ip:181
的时候,应该是可以进入到 Tiny Tiny RSS 网站的,如果进不去,可以先去查查是不是防火墙给限制了,如果限制了还需要将将端口打开,这里就不多说明了。
- 安装
Caddy
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
- 查看
Caddy
是否安装成功
caddy version
- 配置
Caddy
先创建设置文件,这里我使用了Vim
来处理
vim /etc/caddy/Caddyfile
我自己将 Tiny Tiny RSS 和 RSSHub 服务设置到了二级域名上,主域名是我的blog,所以这快只要增加下面的代码即可
ttrss.idtimw.com {
reverse_proxy 127.0.0.1:181
encode zstd gzip
}
rsshub.idtimw.com {
encode zstd gzip
reverse_proxy 127.0.0.1:1200
}
如果是和我一样布置到了二级域名上,那么还需要到自己的域名服务商,设置DNS解析,二级域名直接指到咱服务器的IP即可。
另外我基本都是在 苹果的设备环境,使用了 Reeder 来阅读内容,这里需要在 Tiny Tiny RSS 上设置 Fever 插件,方式比较简单,但是但是这里有个比较坑的地方,我按照页面提醒的URL去登陆,尝试了好多次都失败了,最后我在搜索问题中偶然看到了其他用户设置的 URL: https://ttrss.idtimw.com/plugins/fever/
尝试了一下发现竟然成功了,如果有同样问题的小伙伴,可以尝试一下。
这篇内容到这里基本就差不多了,剩下就是进入网站设置对应的配置了,这里就不在这里多说了,可以分别看对应的教程。
如果您认同我的文章,请帮忙点赞,转发,让更多的人看到,您的支持就是我最大的动力❤️