docker-rss:容器更新的RSS订阅源
简介
什么是 docker-rss ?
docker-rss是一个用Go语言编写的服务器,能通过RSS Feed通知Docker镜像的更新。
主要特点
- 功能:提供
Docker镜像更新的RSS Feed,便于用户跟踪重要软件的更新,特别适合用于个人实验室和工作流程。 - 工作原理:通过挂载
Docker的/var/run/docker.sock套接字,监测正在运行的容器,并调度从Docker Hub扫描镜像更新。 - 部署方式:用户可以使用
Docker Compose部署,配置包括更新时间表和时区。 - 使用:启动后,用户可以将
/feed地址添加到喜欢的RSS阅读器中,以获取更新通知。
能检测镜像更新的项目很多,但 docker-rss 是目前唯一能通过 RSS 摘要通知图像更新的。服务器启动后,将其作为 feed 添加到您喜欢的 RSS 阅读器中即可。
网络要求
群晖需要能访问 https://hub.docker.com 站点,才能检查是否有更新,否则容器启动后会自动关闭
安装
与容器相关的应用,都需要绑定挂载 /var/run/docker.sock ,包括我们之前安装的 portainer、watchtower,Glances,Netdata 等。
什么是 /var/run/docker.sock ?
/var/run/docker.sock是Docker API的主要入口,简单地说,它是Docker守护进程(Docker daemon)默认监听的Unix域套接字(Unix domain socket),容器中的进程可以通过它与Docker守护进程进行通信。

图片来自:https://betterprogramming.pub/about-var-run-docker-sock-3bfd276e12fd
但是群晖的 Docker 管理器并不支持挂载 /var/run/docker.sock 文件,所以这次我们需用命令行来安装
docker cli 安装
如果你熟悉命令行,可能用 docker cli 更快捷
1 | # 运行容器 |
环境变量的简单说明
| 可变 | 值 |
|---|---|
TZ |
设置容器的时区 |
UPDATE_SCHEDULE |
常规 cron 表达式,用于控制检查频率 |
docker-compose 安装
也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件
1 | version: '3' |
然后执行下面的命令
1 | # 新建文件夹 docker-rss |

运行
老苏的小机器上安装了很多容器,所以检查可能需要的时间会稍微长一点

从日志看,似乎不支持 ghcr.io 的镜像,所以会看到类似这样的提示: image ghcr.io/harishdeivanayagam/rowfill is not available on dockerhub. likely local image.

在浏览器中输入 http://群晖IP:8083/feed 就能看到更新的提示

在 RSS 中 新建订阅,老苏用了 Nextflux。订阅地址:http://群晖IP:8083/feed
文章传送门:Miniflux的高颜值客户端Nextflux

订阅成功之后

然后你可以根据需要,对容器做更新
参考文档
thebigbone/docker-rss: an rss feed for docker image updates
地址:https://github.com/thebigbone/docker-rss