diff --git a/content/posts/RSSManX安装部署指南.md b/content/posts/RSSManX安装部署指南.md index 16b60e7..3164168 100644 --- a/content/posts/RSSManX安装部署指南.md +++ b/content/posts/RSSManX安装部署指南.md @@ -3,14 +3,13 @@ title: RSSManX 安装部署指南 date: 2022-05-07 description: RSS Man X 是我两年前入坑 RSS 后,为了方便更多人更方便地使用 RSS 所发起的一个项目,主要是用 docker-compose 整合了一些常用的服务如 TTRSS、RSSHub、Huginn、OpenCC 等并进行了一些优化调整,如自动更新,反反爬虫等。这篇文章会尽可能详尽地讲解安装部署的步骤以及安装过程中可能会遇到的一些问题。 categories: -- 技术 -- 指南 + - 技术 + - 指南 tags: -- RSS -- Linux -- 教程 -- Docker - + - RSS + - Linux + - 教程 + - Docker --- @@ -23,8 +22,9 @@ RSS Man X 会利用到 docker 和 docker-compose,首先需要确保你的服 检查服务器中是否已经安装了 docker 和 docker-compose,并检查他们的版本是否太老。比如输入`docker --version`来检查 docker 的版本 -docker的版本建议不要低于19,docker-compose的版本建议不要低于1.20 +docker 的版本建议不要低于 19,docker-compose 的版本建议不要低于 1.20 (注: Docker 新版本可使用`docker compose` 替代 `docker-compose`) + ```shell ~ » docker --version Docker version 20.10.12, build 20.10.12-0ubuntu2~20.04.1 @@ -37,7 +37,7 @@ docker-compose version 1.25.0, build unknown 如果上面命令执行后提示`command not found`,那么说明并没有安装对应的软件包(或是安装的路径并不在当前用户的 PATH 变量中,尝试切换到 root 操作,详细的原因和解决方法见后文) -### 1.1 Ubuntu/Debian安装Docker +### 1.1 Ubuntu/Debian 安装 Docker ubuntu 和 debian 主要是用 apt 安装和管理软件包,可以使用以下命令来安装,根据实际情况选择是否要加 sudo。下面以 Ubuntu 为例。Debian 下的安装略有不同,可以参见[Docker 官方文档](https://docs.docker.com/engine/install/debian/),以及[清华镜像源](https://mirrors.tuna.tsinghua.edu.cn/help/docker-ce/)。其中`download.docker.com`连接不同的可以尝试讲域名部分更换为[中科大提供的镜像](https://mirrors.ustc.edu.cn/help/docker-ce.html)地址`mirrors.ustc.edu.cn/docker-ce` @@ -81,7 +81,7 @@ sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin ``` -### 1.2 CentOS/Fedora安装Docker +### 1.2 CentOS/Fedora 安装 Docker CentOS 和 Fedora 使用 yum 安装和管理软件包,新版本则是使用 dnf,不过两者功能一致且高度兼容。下面以 CentOS 为例,Fedora 可参见[官方文档](https://docs.docker.com/engine/install/fedora/)或[清华镜像源](https://mirrors.tuna.tsinghua.edu.cn/help/docker-ce/) @@ -103,7 +103,7 @@ sudo yum install -y yum-utils sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo - + # 3.B 墙内方案 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo sed -i 's+download.docker.com+mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo @@ -114,8 +114,6 @@ sudo yum update sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin ``` - - ### 1.3 安装或更新 docker-compose docker-compose 目前有两个主要版本 V1 和 V2,都是可用的。V1 使用 Python 编写,使用时类似`sudo docker-compose up -d`,V2 则是 Golang 编写,与前者高度兼容,但是是作为 docker 的插件安装的,使用时类似`sudo docker compose up -d`,中间的短杠不需要了。 @@ -150,6 +148,7 @@ pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple ``` 如果提示 pip 命令不存在需要先安装一下 + ```shell # Ubuntu/Debian sudo apt install python3-pip @@ -164,34 +163,31 @@ sudo yum install python3-pip python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip ``` - - ### 1.4 为 Docker 配置镜像源 如果 Docker 下载镜像非常慢,你可能需要单独配置一下 Docker 的镜像源。==**注意:Docker 安装软件源的镜像和 Docker 镜像或者说映像的国内源并不是同一个,英文表述可能更准确一些:**== -* 上文安装 docker 时配置的是 docker 的 repo,repo 里含有 docker 的软件包,[国内的镜像](https://mirrors.ustc.edu.cn/help/docker-ce.html)为 Docker CE 安装软件包的镜像 -* 现在我们要配置的是 Docker Hub 的 Mirror,Docker 里拉取 Image 默认会访问[Docker Hub](https://hub.docker.com),国内有多个 Docker Hub 镜像或是 Docker 镜像加速器,如[中科大的源](https://mirrors.ustc.edu.cn/help/dockerhub.html) +- 上文安装 docker 时配置的是 docker 的 repo,repo 里含有 docker 的软件包,[国内的镜像](https://mirrors.ustc.edu.cn/help/docker-ce.html)为 Docker CE 安装软件包的镜像 +- 现在我们要配置的是 Docker Hub 的 Mirror,Docker 里拉取 Image 默认会访问[Docker Hub](https://hub.docker.com),国内有多个 Docker Hub 镜像或是 Docker 镜像加速器,如[中科大的源](https://mirrors.ustc.edu.cn/help/dockerhub.html) 在`/etc/docker/daemon.json`文件中写入以下内容,如不存在可先行创建,注意 json 中列表的最后一项末尾是没有逗号的 ```json { - "registry-mirrors": [ - "https://hub-mirror.c.163.com", - "https://mirror.baidubce.com", - "https://docker.nju.edu.cn", - "https://docker.mirrors.sjtug.sjtu.edu.cn", - "https://dockerproxy.com", - "https://docker.m.daocloud.io" - ] + "registry-mirrors": [ + "https://hub-mirror.c.163.com", + "https://mirror.baidubce.com", + "https://docker.nju.edu.cn", + "https://docker.mirrors.sjtug.sjtu.edu.cn", + "https://dockerproxy.com", + "https://docker.m.daocloud.io" + ] } ``` update 20230720: 部分镜像源不再可用, 更新镜像源配置. 参考 https://gist.github.com/y0ngb1n/7e8f16af3242c7815e7ca2f0833d3ea6 - -配置完成后`sudo systemctl restart docker`重启docker服务,然后输入`sudo docker info`,在输出结果的末尾可以看到`Registry Mirrors`里会出现我们刚刚配置的Docker Hub镜像 +配置完成后`sudo systemctl restart docker`重启 docker 服务,然后输入`sudo docker info`,在输出结果的末尾可以看到`Registry Mirrors`里会出现我们刚刚配置的 Docker Hub 镜像 群辉等 NAS 的系统并不是标准版 Linux,安装的也是魔改版 docker,上面的配置文件地址并不适用,建议自行搜索对应的文档或教程。 @@ -200,17 +196,17 @@ update 20230720: 部分镜像源不再可用, 更新镜像源配置. 参考 http [RSS MAN X 项目](https://github.com/Colin-XKL/RSSmanX)旨在为 RSS 的同好提供一个方便地搭建自己的 RSS 服务的捷径,毕竟不是所有 RSS 爱好者都懂代码 😂。RSS Man X 能够有 RSS 订阅管理、RSS 在线阅读界面,进阶功能包括服务健康自检、海外站点 RSS 解锁等,提供不同的版本供选择,三个版本的 `docker-compose` 文件对应不同的需求,包含的组件和服务有差异。 | 组件 / 服务 / 功能名称 | 标准版 | Lite 版 | Ultimate 版 ✨ | -| ---------------------- | ------ | ------- | ------------- | -| TTRSS | ✅ | ✅ | ✅ | -| RSSHub | ✅ | ✅ | ✅ | +| ---------------------- | ------ | ------- | -------------- | +| TTRSS | ✅ | ✅ | ✅ | +| RSSHub | ✅ | ✅ | ✅ | | Huginn | | | ✅ | -| Mercury | ✅ | | ✅ | +| Mercury | ✅ | | ✅ | | OpenCC | | | ✅ | -| Redis | ✅ | | ✅ | +| Redis | ✅ | | ✅ | | Browserless | | | ✅ | -| 数据持久化保存 | ✅ | ✅ | ✅ | -| 容器自动更新 | ✅ | | ✅ | -| 容器健康检查 | ✅ | | ✅ | +| 数据持久化保存 | ✅ | ✅ | ✅ | +| 容器自动更新 | ✅ | | ✅ | +| 容器健康检查 | ✅ | | ✅ | | 海外站点加速 | | | ✅ | | 智能路由 | | | ✅ | | 反反爬虫 | | | ✅ | @@ -248,25 +244,23 @@ update 20230720: 部分镜像源不再可用, 更新镜像源配置. 参考 http 11. `ls`没有显示`.env`文件是因为以点开头的文件在 Linux 中都是默认隐藏的,可以使用`ls -a`查看到 -12. vi/vim编辑文本太麻烦可以尝试使用nano +12. vi/vim 编辑文本太麻烦可以尝试使用 nano 13. RSS Man 里所有容器绑定了服务器的/etc/localtime,使用`sudo timedatectl set-timezone Asia/Shanghai` 设定系统的时区为上海后,容器里的时区也可以同步,这样日志里的时间就是东八区了 - - **获取帮助** -* **For Tiny tiny RSS problems:** +- **For Tiny tiny RSS problems:** [https://tt-rss.org/wiki.php](https://tt-rss.org/wiki.php) [http://ttrss.henry.wang/](http://ttrss.henry.wang/) -* **For RSSHub problems:** +- **For RSSHub problems:** [https://docs.rsshub.app/faq.html](https://docs.rsshub.app/faq.html) -* **For Huginn problems:** +- **For Huginn problems:** [https://github.com/huginn/huginn#readme](https://github.com/huginn/huginn#readme) ### 2.3 链接 -* [我的 RSS 方案与心得](https://blog.colinx.one/posts/%E6%88%91%E7%9A%84rss%E6%96%B9%E6%A1%88%E4%B8%8E%E5%BF%83%E5%BE%97/) -* [RSS Man X GitHub repo](https://github.com/Colin-XKL/RSSmanX) -* [Huginn 指南:为任意网站制作 RSS](https://blog.colinx.one/posts/huginn%E6%8C%87%E5%8D%97%E4%B8%BA%E4%BB%BB%E6%84%8F%E7%BD%91%E7%AB%99%E5%88%B6%E4%BD%9Crss/) -* [docker compose 的错误使用姿势](https://blog.colinx.one/posts/docker-compose%E7%9A%84%E9%94%99%E8%AF%AF%E4%BD%BF%E7%94%A8%E5%A7%BF%E5%8A%BF/) \ No newline at end of file +- [我的 RSS 方案与心得](https://blog.colinx.one/posts/%E6%88%91%E7%9A%84rss%E6%96%B9%E6%A1%88%E4%B8%8E%E5%BF%83%E5%BE%97/) +- [RSS Man X GitHub repo](https://github.com/Colin-XKL/RSSmanX) +- [Huginn 指南:为任意网站制作 RSS](https://blog.colinx.one/posts/huginn%E6%8C%87%E5%8D%97%E4%B8%BA%E4%BB%BB%E6%84%8F%E7%BD%91%E7%AB%99%E5%88%B6%E4%BD%9Crss/) +- [docker compose 的错误使用姿势](https://blog.colinx.one/posts/docker-compose%E7%9A%84%E9%94%99%E8%AF%AF%E4%BD%BF%E7%94%A8%E5%A7%BF%E5%8A%BF/)