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