清夏晚风

RSSHub

更新日期:2025年3月14日

什么是RSSHub

RSSHub是一个开源、简单易用、易于扩展的RSS生成器,可以给任何奇奇怪怪的内容生成RSS订阅源。它可以帮助我们将网站内容转换为RSS格式,方便我们通过RSS阅读器订阅和阅读。

Docker Compose部署方法(推荐)

1. 安装步骤

  1. 首先下载docker-compose.yml配置文件:
1
wget https://raw.githubusercontent.com/DIYgod/RSSHub/master/docker-compose.yml
  1. 检查配置文件,根据需要修改:
1
vi docker-compose.yml  # 也可以使用你喜欢的其他编辑器
  1. 启动RSSHub服务:
1
docker-compose up -d
  1. 在浏览器中打开 http://{服务器IP}:1200,即可开始使用RSSHub服务。

2. 更新RSSHub

自动更新

可以使用watchtower工具实现自动更新。

手动更新

  1. 更新镜像:
1
docker-compose pull
  1. 重启容器:
1
docker-compose up -d

3. 配置RSSHub

通过修改docker-compose.yml文件中的environment部分来配置RSSHub。常见的配置项包括:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
environment:
# 缓存相关配置
CACHE_TYPE: redis
CACHE_EXPIRE: 3600 # 缓存过期时间,单位为秒

# 访问控制
ACCESS_KEY: your_access_key # 访问密钥

# GitHub相关配置
GITHUB_ACCESS_TOKEN: your_github_token

# 代理配置
PROXY_PROTOCOL: http
PROXY_HOST: 127.0.0.1
PROXY_PORT: 7890

Docker镜像说明

RSSHub提供了多种Docker镜像,支持以下注册表:

  • Docker Hub: diygod/rsshub
  • GitHub: ghcr.io/diygod/rsshub

支持的架构:

  • linux/amd64
  • linux/arm/v7
  • linux/arm64

镜像标签(Tags)说明:

标签 描述 支持puppeteer 示例
latest 最新版本 latest
chromium-bundled 最新版本 chromium-bundled
{YYYY-MM-DD} 特定日期版本 2023-06-18
chromium-bundled-{YYYY-MM-DD} 特定日期版本 chromium-bundled-2023-06-18
{commit hash} 特定提交版本 e7c233b1df982fae10684a11c9df57892e96940a

注意:支持puppeteer的版本会占用更多资源,但支持更多路由。

重要配置说明

缓存配置

RSSHub默认使用内存缓存,但在Docker Compose部署中,推荐使用Redis缓存以提高性能:

1
2
CACHE_TYPE: redis
CACHE_EXPIRE: 600 # 缓存过期时间,单位为秒

访问控制

如果你希望限制RSSHub的访问,可以设置访问密钥:

1
ACCESS_KEY: your_access_key

设置后,用户需要在URL中添加?key=your_access_key才能访问。

代理设置

如果你的服务器无法直接访问某些网站,可以配置代理:

1
2
3
PROXY_PROTOCOL: http
PROXY_HOST: 127.0.0.1
PROXY_PORT: 7890

浏览器渲染支持

某些路由需要浏览器渲染支持,需要使用带有puppeteer的镜像:

1
image: diygod/rsshub:chromium-bundled

完整docker-compose.yml示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
version: '3'

services:
rsshub:
image: diygod/rsshub
restart: always
ports:
- '1200:1200'
environment:
NODE_ENV: production
CACHE_TYPE: redis
REDIS_URL: 'redis://redis:6379/'
PUPPETEER_WS_ENDPOINT: 'ws://browserless:3000'
depends_on:
- redis
- browserless

browserless:
image: browserless/chrome
restart: always
ulimits:
core:
hard: 0
soft: 0

redis:
image: redis:alpine
restart: always
volumes:
- redis-data:/data

volumes:
redis-data:

注意事项

  1. 如果使用带有puppeteer的版本,需要确保服务器有足够的内存和CPU资源。
  2. 在生产环境中,建议配置反向代理(如Nginx)并启用HTTPS。
  3. 定期备份Redis数据,以防数据丢失。
  4. 如果遇到性能问题,可以调整缓存过期时间和其他配置参数。
  5. 对于高流量站点,可以考虑使用负载均衡和多实例部署。

故障排除

  1. 如果容器无法启动,检查docker-compose.yml文件格式是否正确。
  2. 如果某些路由无法访问,检查是否需要配置代理或使用带有puppeteer的镜像。
  3. 如果遇到内存不足问题,可以限制容器的内存使用量。
  4. 查看容器日志以获取更多错误信息:docker-compose logs rsshub

通过Docker Compose部署RSSHub是最简单、最推荐的方式,它可以帮助你快速搭建一个稳定的RSSHub服务。

  • Title:
  • Author: 清夏晚风
  • Created at : 2026-01-13 16:48:23
  • Updated at : 2026-01-13 16:48:23
  • Link: https://blog.kimikkorow.eu.org/信息聚合服务/RSS/RSSHub/
  • License: This work is licensed under CC BY-NC-SA 4.0.