Py学习  »  docker

docker-rss:容器更新的RSS订阅源

各种折腾 • 5 月前 • 117 次点击  



简介

什么是 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 ,包括我们之前安装的 portainerwatchtower GlancesNetdata 等。

什么是 /var/run/docker.sock ?


/var/run/docker.sock 是 Docker API 的主要入口,简单地说,它是 Docker 守护进程( Docker daemon)默认监听的 Unix 域套接字(Unix domain socket),容器中的进程可以通过它与 Docker 守护进程进行通信。

title
title

图片来自:https://betterprogramming.pub/about-var-run-docker-sock-3bfd276e12fd

但是群晖的 Docker 管理器并不支持挂载 /var/run/docker.sock 文件,所以这次我们需用命令行来安装


docker cli 安装

如果你熟悉命令行,可能用 docker cli 更快捷


# 运行容器
docker run -d \
   --restart unless-stopped \
   --name docker-rss \
   -p 8083:8083 \
   -v /var/run/docker.sock:/var/run/docker.sock \
   -e TZ=Asia/Shanghai \
   -e UPDATE_SCHEDULE="0 * * * *" \
   vector450/docker-rss:latest

环境变量的简单说明

可变
TZ
设置容器的时区
UPDATE_SCHEDULE
常规 cron 表达式,用于控制检查频率


docker-compose 安装

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件


version: '3'

services:
docker-rss:
    image:vector450/docker-rss:latest
    container_name:docker-rss
    ports:
      -"8083:8083"
    volumes:
      -/var/run/docker.sock:/var/run/docker.sock
    environment:
      -TZ=Asia/Shanghai
      -UPDATE_SCHEDULE=0**** 

然后执行下面的命令


# 新建文件夹 docker-rss 
mkdir -p /volume1/docker/docker-rss

# 进入 docker-rss 目录
cd /volume1/docker/docker-rss

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d


运行

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

从日志看,似乎不支持 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

杨浦老苏,公众号:各种折腾Miniflux的高颜值客户端Nextflux

订阅成功之后

然后你可以根据需要,对容器做更新


参考文档


thebigbone/docker-rss: an rss feed for docker image updates
地址:https://github.com/thebigbone/docker-rss

@所有人:写文不易,如果你都看到了这里,请点个在看,分享给更多的朋友;为确保你能收到每一篇文章,请主页右上角设置星标。点点广告就是对老苏最大的支持。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/179430
 
117 次点击