本文详细介绍了在 CentOS 虚拟机中通过 Docker 部署 RSSHub 的完整步骤,包括配置国内镜像源优化 YUM 更新速度、安装 Docker、运行 RSSHub 容器,以及如何设置防火墙和虚拟机端口映射以实现主机访问。

一、编辑 YUM 配置文件

1、打开 CentOS 系统中的 YUM 软件仓库配置文件

1
vim /etc/yum.repos.d/CentOS-Base.repo

2、将 [base][updates][extras] 等仓库的 mirrorlist 删掉(或者注释掉),并添加或修改 baseurl 为国内镜像。这里使用阿里云的镜像:

image-20241124125804074

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[base]
name=CentOS-$releasever - Base
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
enabled=1

[updates]
name=CentOS-$releasever - Updates
baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
enabled=1

[extras]
name=CentOS-$releasever - Extras
baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
enabled=1

3、保存并退出编辑器,然后输入如下命令清理缓存并重新更新 YUM

1
2
3
yum clean all
yum makecache
yum update

二、安装Docker

1、安装 yum-utils 工具包

1
yum install -y yum-utils

2、将 Docker 官方的阿里云镜像源添加到 CentOS 的 YUM 软件仓库列表中

1
2
3
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3、安装最新版本的 Docker Engine-Community 和 containerd

1
yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

如果提示您接受 GPG 密钥,请选是。

4、启动Docker

1
systemctl start docker

5、通过运行 hello-world 镜像来验证是否正确安装了 Docker Engine-Community

1
docker run hello-world

出现如下图所示的 Hello from Docker 即为成功

image-20241124133139048

若没有出现如上信息,请根据下面的步骤设置镜像源:
1.编辑 Docker 的配置文件 daemon.json

1
vim /etc/docker/daemon.json

2、在 daemon.json 中写入如下内容

1
2
3
{
"registry-mirrors":["https://docker.unsee.tech","https://dockerpull.org","https://dockerhub.icu"]
}

3、保存退出后重启

1
2
systemctl daemon-reload
systemctl restart docker

4、运行 hello-world 镜像来验证是否正确安装了 Docker Engine-Community

1
docker run hello-world

三、Docker部署RSSHub

下载并运行基于 diygod/rsshub:chromium-bundled 镜像的应用

1
docker run -d --name rsshub -p 1200:1200 diygod/rsshub:chromium-bundled

注:这里的参数可以进行更改,但建议第一次部署不更改,先能运行起来更重要!

出现类似于下图的结果,说明运行成功

image-20241124170239014

如果您安装了GNOME桌面(图形化桌面),可打开里面自备的浏览器,输入 localhost:1200,其返回的网页应该如下图所示

u4zjz5mi.baf

四、VMWare虚拟机设置端口映射

1.Centos7 防火墙开放1200端口

1
firewall-cmd --zone=public --add-port=1200/tcp --permanent

2.更新防火墙规则并查看1200端口是否开放

1
2
firewall-cmd --reload
firewall-cmd --zone=public --query-port=1200/tcp

若出现 yes,则1200端口成功开放

3.打开VMWare虚拟机的虚拟网络编辑器,先点击 VMnet8,然后点击 NAT 设置

j12ibch5.1i2

4.点击”添加“

ej0mquh3.nw1

5.终端查询虚拟机的ip地址

1
ifconfig

如下图所示,ens33 中的 inet 后的就是虚拟机的ip地址

bouhob4i.ile

6.在”映射传入端口“中写入对应信息,然后保存并应用

1aibrpdi.fmn

7.在主机的浏览器中输入localhost:1200,如下图所示则端口映射设置成功,然后就可以愉快地根据RSSHub官网文档设置路由啦

1n03px3j.rno

五、补充

  • 用虚拟机ip地址+端口号设置RSS订阅源

有些RSS阅读器不支持用localhost的方式订阅RSS源,可能会提示”请正确输入URL“

注:irreader支持用localhost的方式订阅RSS源

k1vzdmb2.wzh

使用虚拟机ip地址+端口号设置RSS订阅源即可解决该问题

3tqgmgak.bnk

参考资料

1、CentOS Docker 安装 - from 菜鸟教程

2、目前国内可用Docker镜像源汇总(截至2024年11月) - from CoderJia

3、Docker部署RSSHub - from RSSHub

4、docker部署rsshub,万物皆可rss,只要提供服务 - from 长大乐的bilibili视频


本站由 Skylwn 使用 Stellar 1.29.1 主题创建。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
本站总访问量