本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
Moby Ryuk 是一个用于在指定延迟后根据给定过滤器自动删除 Docker 资源的工具。它支持按条件清理容器、网络、卷和镜像,通过 TCP 连接接收资源过滤规则,并在连接关闭或超时后执行清理操作,适用于自动化资源管理场景。
health=unhealthy)清理异常容器。label=temp=true)标记临时资源,统一定时清理。需挂载 Docker 守护进程套接字(/var/run/docker.sock)以操作 Docker 资源,并配置端口映射:
docker run -v /var/run/docker.sock:/var/run/docker.sock -e RYUK_PORT=8080 -p 8080:8080 docker.io/testcontainers/ryuk
通过 TCP 客户端(如 nc)连接到 Ryuk 服务:
nc localhost 8080
连接建立后,发送过滤规则(键值对格式),每条规则需以 ACK 确认:
# 示例:删除标签为 testing=true 且健康状态为 unhealthy 的资源 label=testing=true&health=unhealthy ACK # 示例:删除标签为 something 的资源 label=something ACK
关闭 TCP 连接后,Ryuk 会在延迟后执行清理。
通过管道一次性发送过滤规则(无需手动确认 ACK):
printf "label=something_else" | nc localhost 8080
资源删除后,Ryuk 会输出清理日志,示例如下:
2018/01/15 18:38:52 Timed out waiting for connection 2018/01/15 18:38:52 Deleting {"label":{"something":true}} 2018/01/15 18:38:52 Deleting {"label":{"something_else":true}} 2018/01/15 18:38:52 Deleting {"health":{"unhealthy":true},"label":{"testing=true":true}} 2018/01/15 18:38:52 Removed 1 container(s), 0 network(s), 0 volume(s), 0 image(s)
Ryuk 支持通过环境变量配置行为,具体参数如下:
| 环境变量 | 描述 | 默认值 | 格式说明 |
|---|---|---|---|
RYUK_CONNECTION_TIMEOUT | 首次连接超时时间(未收到连接时的等待时间) | 60s | 遵循 Go 语言 time.ParseDuration 格式,如 30s(30秒)、5m(5分钟)。 |
RYUK_PORT | Ryuk 服务绑定的端口 | 8080 | 整数端口号,需与容器端口映射一致。 |
RYUK_RECONNECTION_TIMEOUT | Docker 连接断开后的重连超时时间 | 10s | 遵循 Go 语言 time.ParseDuration 格式,如 5s(5秒)、1m(1分钟)。 |
# 自定义端口和超时配置示例 docker run \ -v /var/run/docker.sock:/var/run/docker.sock \ -e RYUK_PORT=9090 \ -e RYUK_CONNECTION_TIMEOUT=30s \ -e RYUK_RECONNECTION_TIMEOUT=5s \ -p 9090:9090 \ docker.io/testcontainers/ryuk
version: '3' services: ryuk: image: docker.io/testcontainers/ryuk volumes: - /var/run/docker.sock:/var/run/docker.sock environment: - RYUK_PORT=8080 - RYUK_CONNECTION_TIMEOUT=60s - RYUK_RECONNECTION_TIMEOUT=10s ports: - "8080:8080"
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429