目 录CONTENT

文章目录

RSS体系的详细搭建 (附一键脚本)

阿尘Joueur
2022-09-17 / 0 评论 / 2 点赞 / 776 阅读 / 2,360 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2024-03-11,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
广告 广告

服务器购买推荐:

点击直达 腾讯云服务器
点击直达 海外服务器
点击直达 阿里云服务器

搭建环境

  • 系统 Ubuntu20.04
  • 域名一枚,并做好解析到服务器上
  • 安装好Docker、Docker-compose相关教程

RssHub源的获取

img

RSSHub 是一个开源、简单易用、易于扩展的 RSS 生成器,可以给任何奇奇怪怪的内容生成 RSS 订阅源。RSSHub 借助于开源社区的力量快速发展中,目前已适配数百家网站的上千项内容

由于RSSHUB主站国内无法访问,我准备使用腾讯云服务器上的宝塔面板,利用方便的docker-compass自行搭建。

部署RSSHUB

下载 docker-compose.yml:

wget https://raw.githubusercontent.com/DIYgod/RSSHub/master/docker-compose.yml

创建 volume 持久化 Redis 缓存

docker volume create redis-data

启动

docker-compose up -d

命令中的up是“运行”,-d命令代表后台运行。上文提到可以手动下载xml,保存至文件夹内(举例:新建一个叫rsshub的文件夹,把docker-compose.yml上传进去),在rsshub文件夹内运行这个命令。

现在,使用docker ps命令可以显示rsshub的实例已经运行,浏览器通过 http://IP地址:1200 就可以访问了,当然你需要在服务器供应商的控制面板内开放1200这个端口。

如果想更改默认的端口,安装前编辑docker-compose.yml中“1200:1200”中前面一个1200到你想要的端口即可。
img

如果部署完成后,又想修改端口怎么做?

我们可以进入之前存放docker-compose.yml的文件夹,终端运行命令

docker-compose down

来停止RSSHUB的运行,再编辑docker-compose.yml中的端口,编辑完成后再启动就可以了。这也是使用docker-compose部署的方便之一。

RSSHUB使用的方法可以见其文档

更新

删除旧容器:

docker-compose down

如果之前已经下载 / 使用过镜像,下方命令可以帮助你获取最新版本:这可能可以解决一些问题!

docker pull diygod/rsshub
docker-compose up -d

部署Tiny Tiny RSS(第一种)

关于Tiny Tiny RSS的介绍,少数派文章已经很多了,类似软件还有FreshRSSminiflux,在少数派站点里也有很多介绍这两者的文章。刚好目前TTRSS也推荐使用docker-compose搭建。
官方指南问答见此!

安装
git clone https://git.tt-rss.org/fox/ttrss-docker-compose.git ttrss-docker

从官方获取ttrss的拷贝,存入“root/ttrss-docker”目录

首先使用文件夹终端运行
copy .env-dist .env

.env-dist文件拷贝为.env

我们将在.env文件中进行配置,打开.env文件,可以看到如下代码:
img

我们需要修改TTRSS_SELF_URL_PATHHTTP_PORT字段

TTRSS_SELF_URL_PATH=http://IP地址:181/tt-rss

HTTP_PORT=181

这里由于我不使用反向代理,在HTTP_PORT字段中删除了127.0.0.1:

这里我使用的端口是181,你可以更改成你想要的端口并在服务器上开放此端口,注意文件中#后面是注释,需要修改的是不带#的字段

修改完成后保存,继续使用文件夹内的终端运行:

docker-compose pull && docker-compose up -d

你可以通过环境变量配置,配置文档见此

例如:需要设置SELF_URL_PATH,将下列字段添加到.env文件中:

TTRSS_SELF_URL_PATH=http://example.com/tt-rss

另外,你可以在tt-rss根目录下创建config.php,使用下列语法。

putenv('TTRSS_DB_HOST=myserver');
putenv('TTRSS_SELF_URL_PATH=http://example.com/tt-rss');
putenv('TTRSS_SESSION_COOKIE_LIFETIME='. (86400*30))。

注意数值周围没有引号。选项应该总是以TTRSS_为前缀。不要修改 classes/config.php。你不需要把所有的东西都放到config.php中,只需要把你从默认值中改变的选项放进去。

安装插件

对于官方的插件,在TTRSS界面中进入偏好设置→插件,即可勾选启用自带的插件或安装新的插件。
对于第三方插件,在《如何搭建属于自己的 RSS 服务,高效精准获取信息》文章中有详细教程,这里不赘述,但是根据官网文档,提供更简单方便的一种方法:
运行命令:

docker volume inspect ttrss-docker_app | grep Mountpoint

这可以获取ttrssvolume文件路径,进入此路径,找到plugins.local文件夹,将下载的插件文件夹上传,就可以使用图形界面替代命令行,方便的安装插件了。

部署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

利用 curl 下载 ttrssdocker-compose配置文件至服务器可能会报错,大家可以直接在宝塔面板找到对应的文件夹下,然后新建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

修改 docker-compose.yml里面的内容:

在配置文件中,将PostgreSQL 数据库的默认密码进行修改。暴露在公网的数据库使用默认密码非常危险。

在配置文件中,将 Tiny Tiny RSS 服务的部署网址修改为我们实际的部署网址。比如我的部署网址是 :https://xxxx.xxxx.com

注意,如果你的部署 URL 包含端口(默认部署端口为 181 端口),那么这里的 URL 也需要加上端口号,格式为 {网址}:{端口}不过不必担心,如果你这里的 URL 配置不正确,那么访问 Tiny Tiny RSS 的时候,Tiny Tiny RSS 会提醒你修改这里的值为正确的 URL,按照提醒进行配置即可.

之后,我们保存配置文件,启动 Tiny Tiny RSS 服务。在刚刚的 ttrss 目录下执行:

docker-compose up -d

如果发现问题,修改docker-compose的配置文件后,需要执行下面的命令重启Docker容器们:

注意docker-compose命令要在docker-compose.yml文件下运行!

# 关闭 Docker 容器们
docker-compose down

# 删除已停止的 Docker 容器
docker-compose rm

# 再次开启 Docker 服务
docker-compose up -d

项目预览

image-20220917131851267

image-20220917132044805

反向代理

HestiaCP面板反向代理其他网站设置

Nginx Proxy Manager 一款Nginx可视化面板

利用宝塔面板反向代理

新建一个站点,不要数据库,不要php,纯静态

然后打开下面的配置,修改Nginx的配置

注释掉上图内容

image-20220823185116682

添加下列代码:

    location / {
      proxy_pass http://127.0.0.1:181/;
      rewrite ^/(.*)$ /$1 break;
      proxy_redirect off;
      proxy_set_header Host $host;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header Upgrade-Insecure-Requests 1;
      proxy_set_header X-Forwarded-Proto https;
    }

image-20220823185416016

如何在多平台阅读

API务必开启,后续我们会在电脑和手机上安装软件来阅读内容.
image-20220917174743145

启用一下插件:打来偏好设置–插件
image-20220917174947667

image-20220917175013026

配置全文阅读插件,输入service.mercury:3000
image-20220917175104781

配置繁简转换插件,输入service.opencc:3000:
image-20220917175227595

这里推荐一个神级项目:RSSHub
image-20220917175342979

在网站的域名最后加上atom.xml或者rss,大概率就是对应的rss地址,比如我的博客域名是https://achenwanjia.eu.org/,我的rss地址就是https://achenwanjia.eu.org/atom.xml
image-20220917175631363

配置Reeder5

image-20220917175737372

打开Tiny Tiny RSS–偏好设置–Fever Emulation设置密码:

屏幕截图 2022-09-17 180109

这个地方填三个东西

server的话填前面我们的那个地址,例如:https://xxxxx.com/plugins/fever/

email 填用户名,默认的admin

password密码填前面API设置过的密码。

然后就能成功登陆了。
20201002232245954

image-20220917180819009

然后就可以愉快的玩耍了!

一键脚本

wget https://raw.githubusercontent.com/stilleshan/rssforever/main/install.sh && chmod +x install.sh && ./install.sh

默认账户: admin
默认密码: password

2
广告 广告

评论区