你是否曾因为信息过载而感到烦恼?是否希望有一个属于自己的信息聚合平台?本文将带你了解如何搭建一个属于自己的RSS订阅服务,让你轻松订阅和管理你感兴趣的内容,打造一个专属你的信息世界。
写在前面
在分享这篇文章之前,我得先好好感谢一下这三位大佬:蜡客生活系、我不是咕咕鸽、立云图志,感谢提供的帮助和技术支持,非常感谢🙏!
什么是RSS
RSS(简易信息聚合)是一种技术,允许用户订阅网站的更新,并在一个阅读器中集中查看。用户可以订阅新闻网站、博客、播客等多种类型的在线内容。当订阅的网站发布新内容时,RSS会自动获取并推送到用户的阅读器中,方便用户阅读。
使用RSS的优势在于节省时间、个性化订阅、保护隐私。用户不必逐个访问网站来检查更新,只需在一个地方就能看到所有关注的内容。此外,用户可以根据自己的兴趣选择订阅特定的内容源,过滤掉不感兴趣的信息。通过RSS阅读器查看内容,用户不必直接访问网站,可以减少追踪和数据收集,保护隐私。
然而,使用RSS也存在一些缺点。首先,RSS的实时性较差,某些RSS更新可能不如直接访问网站来得及时。其次,不是所有网站都提供RSS源,因此用户可能会错过一些内容。此外,RSS阅读器通常只提供文本内容,用户体验可能不如网站本身。最后,使用RSS需要额外的阅读器工具或应用,增加了使用的复杂性。
总之,RSS是一种便捷的工具,可以帮助用户高效地获取和管理关注的在线内容。尽管存在一些缺点,但对于追求高效、个性化的信息获取方式的用户来说,RSS仍然是一个不错的选择。
市面上有很多RSS订阅服务,比如Feedly和Inoreader,它们能帮我们整理和订阅各种网站的内容,还能同步我们在不同设备上的阅读进度。但这些服务的免费版本有限制,完整功能要花不少钱订阅。幸运的是,GitHub上有个叫Tiny Tiny RSS的开源工具,它能免费提供所有RSS订阅功能,满足我们的需求。
准备工作
1.服务器(这里以 CentOS 7 为例)
2.安装好宝塔面板(不会的话自行百度,网上教程很多的)
3.配置好LNMP(这个一般在安装宝塔面板时都是自带安装的)
具体操作
1.docker的安装和启用
1.1.安装docker
Docker 是非常优秀的虚拟化容器,借助于 Docker 我们可以方便的部署 Tiny Tiny RSS,首先我们在服务器上安装 Docker 本体。在服务器上面执行下面命令来安装 Docker:
curl -fsSL https://get.docker.com/ | sh
1.2.启动Docker
sudo systemctl start docker
1.3.检查Docker是否启动成功
sudo systemctl status docker
1.4.设置docker自动启动
sudo systemctl enable docker
2.安装docker-compose
接下来我们安装 docker-compose:一个管理和启动多个 Docker 容器的工具。
由于 Tiny Tiny RSS 依赖有 PostgreSQL 的数据库服务以及 mercury_fulltext 的全文抓取服务等等,这些服务我们都借助于 Docker 部署,因此利用 docker-compose 就会大大降低我们的部署难度。
2.1.我们继续,在服务器上面执行下面的命令来安装 docker-compose:
sudo curl -L "https://github.com/docker/compose/releases/download/1.28.6/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
2.2.之后给予安装好的 docker-compose 可执行权限:
chmod +x /usr/local/bin/docker-compose
2.3.创建链接:
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
2.4.检查安装是否成功:
docker-compose --version
3.安装Tiny Tiny RSS
3.1.准备工作已经全部完成,接下来我们下载由 Awesome-TTRSS 配置的 Tiny Tiny RSS 服务的 docker-compose 配置文件:
# 创建 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
3.2.注意利用 curl 下载 ttrss 的 docker-compose 配置文件至服务器可能会报错,大家可以直接在宝塔面板找到对应的文件夹下。
3.3.然后新建docker-compose.yml文件,复制下面的内容进去:
version: "3"
services:
service.rss:
image: wangqiru/ttrss:latest
container_name: ttrss
ports:
- 181:80
environment:
- SELF_URL_PATH=http://localhost:181/ # please change to your own domain
- DB_PASS=ttrss # use the same password defined in `database.postgres`
- PUID=1000
- PGID=1000
volumes:
- feed-icons:/var/www/feed-icons/
networks:
- public_access
- service_only
- database_only
stdin_open: true
tty: true
restart: always
service.mercury: # set Mercury Parser API endpoint to `service.mercury:3000` on TTRSS plugin setting page
image: wangqiru/mercury-parser-api:latest
container_name: mercury
networks:
- public_access
- service_only
restart: always
service.opencc: # set OpenCC API endpoint to `service.opencc:3000` on TTRSS plugin setting page
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=ttrss # feel free to change the password
volumes:
- ~/postgres/data/:/var/lib/postgresql/data # persist postgres data to ~/postgres/data/ on the host
networks:
- database_only
restart: always
# utility.watchtower:
# container_name: watchtower
# image: containrrr/watchtower:latest
# volumes:
# - /var/run/docker.sock:/var/run/docker.sock
# environment:
# - WATCHTOWER_CLEANUP=true
# - WATCHTOWER_POLL_INTERVAL=86400
# restart: always
volumes:
feed-icons:
networks:
public_access: # Provide the access for ttrss UI
service_only: # Provide the communication network between services only
internal: true
database_only: # Provide the communication between ttrss and database only
internal: true
3.4.修改 docker-compose.yml里面的内容:
- 在配置文件中,将 PostgreSQL 数据库的默认密码进行修改。暴露在公网的数据库使用默认密码非常危险。
- 在配置文件中,将 Tiny Tiny RSS 服务的部署网址修改为我们实际的部署网址。
- 注意,如果你的部署 URL 包含端口(默认部署端口为 181 端口),那么这里的 URL 也需要加上端口号,格式为 {网址}:{端口}不过不必担心,如果你这里的 URL 配置不正确,那么访问 Tiny Tiny RSS 的时候,Tiny Tiny RSS 会提醒你修改这里的值为正确的 URL,按照提醒进行配置即可。
如果是用宝塔面板,记得打开安全里面的端口设置。还有服务器端的防火墙端口也要记得放行。
3.5.保存配置文件并启动 Tiny Tiny RSS 服务。在刚刚的 ttrss 目录下执行:
docker-compose up -d
3.6.等待脚本执行完成,如果一切没有问题,那么接下来输入:
docker ps
我们应该看到类似下面的结果:
到这里,我们就可以通过访问 {服务器 IP}:端口 ,直接看到 Tiny Tiny RSS 的 Web 前端了。
当然你也可以通过配置nginx反向代理,来绑定自己的域名来代替上面的 {服务器 IP}:端口 。
此方法来自我不是咕咕鸽。
写在最后
此方法仅作为备用资源(自己留着用的😂),当然啦好东西肯定要和大家一起分享的。
完!
我用的APP
只要能达到自己的目的 什么方法都是可以的
耶?我今天在转我的友链朋友圈时,发现抓取不到贵站的信息,我看博主的订阅应该是:https://yjvc.cn/index.php/feed/ , 我不太懂动态博客,但是index.php不应该是文件吗?为什么文件下还有文件夹呀😂😂有点小懵逼,请教一下
“index.php"在网站上通常是个文件,但也可以放在文件夹里,比如"feed/”。这样的结构是正常的,可能与网站是否使用伪静态有关,它让动态页面的网址看起来像静态页面。所以,即使网址里有"index.php/feed/",实际上可能还是指向动态生成的RSS内容。
好高级哈哈,长见识了
见笑了😂
我的友链朋友圈好像只能抓取到直接跟/feed/的动态,不过我也会通过友链页面经常回访的😊😊
欢迎😁
可以尝试搭建这个哈 挺好用的https://xyzbz.cn/archives/831/
我看了,的确很不错。还望多指导🙏🏻
别留着了,用起来,给自己做块RSS信息流撒。
正有此意😂,不过遇到一点小麻烦……
学习了 ,一会试着装一下
好支持
😄
这个还没有用过,不过看这教程挺麻烦的呀。
跟着教程一步一步来,不麻烦的😄
有的博客朋友圈那个是怎么实现的
用服务器部署🫣
我是直接用蚁阅放自己博客的那个功能,每天去看看有没有更新的文章,然后顺线过去评论交流,
蚁阅如果可以接受用浏览访问,其实已经和多设备差不多了
蚁阅的确不错。
之前自己搭建过蚁阅RSS阅读。但是自建RSS最大的问题是无法和IOS的Reader等软件同步,每次新增订阅源都要手动添加2次,于是我现在都是只用手机订阅RSS,看到推送之后去电脑找友链
解决了吗?
Tiny Tiny RSS 搭建好之后可以启用fever api的,我看可以搭配Reeder4使用,安卓手机直接有Tiny Tiny RSS应用,我之前用的,挺方便的,直接同步,个人信息源订阅Rsshub很方便
不错👍
没有,现在只用手机浏览RSS了