zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Docker私有化部署RSSHub全记录Docker私有化部署RSSHub全记录

2023-04-18 13:03:19 时间

最近zhaoolee在整理《嘎!RSS》的优质订阅RSS地址, 发现《RSSHub》github.com/DIYgod/RSSHub 这个开源项目很不错,支持私有化部署,于是我自己捣鼓了一下,顺利搞定,这里放一波部署全记录,我这里用的镜像是CentOS7版本

安装docker

sudo yum install -y yum-utils
sudo yum-config-manager 
    --add-repo 
    https://download.docker.com/linux/centos/docker-ce.repo
sudo yum remove docker 
                  docker-client 
                  docker-client-latest 
                  docker-common 
                  docker-latest 
                  docker-latest-logrotate 
                  docker-logrotate 
                  docker-engine
sudo yum install -y docker-ce-18.09.1 docker-ce-cli-18.09.1 containerd.io

测试docker是否安装成功

sudo systemctl start docker
sudo docker run hello-world

hello-world

设置docker开机启动,

sudo systemctl enable docker

开机启动

安装 docker-compose

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

下载 Rsshub的 docker-compose.yml

cd /opt
mkdir rsshub
cd rsshub
wget https://raw.githubusercontent.com/DIYgod/RSSHub/master/docker-compose.yml

docker-compose

docker-compose.yml中的内容为

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:
        # See issue 6680
        image: browserless/chrome:1.43-chrome-stable
        restart: always
        ulimits:
          core:
            hard: 0
            soft: 0

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

volumes:
    redis-data:

从配置文件可知, 此服务运行在1200端口

创建 volume 持久化 Redis 缓存

docker volume create redis-data

在/opt/rsshub目录下运行以下命令,启动服务

docker-compose up -d

运行完成后,输入docker ps 即可看到已经运行的服务

docker ps

开启对外端口

开启对外端口

查看服务是否运行成功

运行成功

如何使用?

查看官方文档

将文档中的rsshub.app 替换为 服务器IP:1200 即可

替换

  • 私有化部署效果

私有化部署效果

如果你感觉ip配合端口的订阅地址不好看,可以自行绑定一个域名,这样即使换了主机ip, 也可以通过域名访问到服务

域名访问

小结

信息茧房是指人们关注的信息领域会习惯性地被自己的兴趣所引导,从而将自己的生活桎梏于像蚕茧一般的“茧房”中的现象。为了打破信息茧房,我打造了名为嘎!RSS的项目,利用免费的Github Actions服务, 基于RSS提供一个内容全面的信息流, 让现代人的知识体系更广泛, 减弱信息茧房对现代人的影响, 让非茧房信息流造福人类~ 《嘎!RSS》永久开源页面: github.com/zhaoolee/garss