本文最后更新于 322 天前,其中的信息可能已经过时,如有 错误/失效 请发送邮件到qimeng9420@foxmail.com或留言。
测试环境
uname -a
docker --version
docker-compose --version
创建RSShub运行目录
切换到自己的docker项目下(即自己的项目想要运行的目录),创建RSShub文件夹并进入到该目录
cd /etc/docker
mkdir -p RSShub && cd RSShub开启RSShub防火墙端口
开启服务器防火墙端口
RSShub默认的设置端口为1200,开启防火墙1200端口(如果自己要设置为其他端口,自行开设其他端口)
#开启1200端口
firewall-cmd --zone=public --add-port=1200/tcp --permanent
#重载防火墙使1200端口生效
firewall-cmd --reload
#查看1200端口是否已经生效
firewall-cmd --query-port=1200/tcp
#返回yes即生效
配置docker-compose.yml文件
使用最新版本的 docker 映像
diygod/rsshub
diygod/rsshub:latest
#如需启用 puppeteer,请在每条命令中均将 diygod/rsshub 替换为 diygod/rsshub:chromium-bundledrsshub:chromium-bundled,它是puppeteer版本,更加轻量,更新速度也更快。官方最新tag查看。推荐使用RSS订阅该tag的更新。

可以看到目前chromium-bundled最新版本为chromium-bundled-2024-01-11
在RSShub文件夹下创建docker-compose.yml文件
vim docker-compose.yml编辑以下内容
version: '3.9'
services:
    rsshub:
        image: diygod/rsshub:chromium-bundled
        restart: always
        ports:
            - '1200:1200' # 监听端口,按需修改
        environment:
            NODE_ENV: production
            CACHE_TYPE: redis
            REDIS_URL: 'redis://redis:6379/'
            PUPPETEER_WS_ENDPOINT: 'ws://browserless:3000'
            ACCESS_KEY: admin # 对RSShub生成的订阅链接进行验证和加密,推荐开启。
        depends_on:
            - redis
    redis:
        image: redis:alpine
        restart: always
        volumes:
            - ./redis-data:/data上线和查看服务
上线服务
docker-compose up -d
查看服务是否运行
docker ps更新
手动更新RSShub
docker版rsshub是经常更新(每天1-3更),建议按需更新至最新版。
#在RSShub的docker-compose.yml所在文件夹下运行
#下线服务
docker-compose down
#拉去镜像,以下两条命令任选一条都可
docker-compose pull
docker pull diygod/rsshub:chromium-bundled
再重新上线
docker-compose up -d自动更新RSShub
自动更新RSShub我们需要借用另外一个软件:Watchtower
Watchtower 是一款自由开源的应用,它本身自己也是一个 Docker 镜像,主要作用是用来监控运行中的容器最初启动时的镜像是否需要更新。
 


