[英]Docker watchtower with private registry
每当我将新版本推送到我的私有注册表时,我都想运行一个 docker watchtower 来自动升级我的 docker 容器。
但是,瞭望塔在我的私人注册表中找不到容器。
有谁知道如何使用私人 docker 注册表运行瞭望塔?
瞭望塔维护者和开发者在这里。 实际上,我们确实支持使用私有注册表。 这是通过使用完全限定名称作为图像名称来完成的,即。 example.com/my-org/my-image:my-tag
,以及在 watchtower 容器根目录安装 config.json 。
查看文档,特别是https://containrrr.github.io/watchtower/usage-overview/
文档可能会更清晰,如果您愿意完成这项任务,请在开始工作后随时对其进行改进。
谢谢,西蒙
更新:虽然这种方法可能仍然有效,但在 watchtower 中有对此的本地支持。
Watchtower 目前仅支持 Docker Hub 私有注册表,不支持 Quay 或 Gitlab 等异地注册表。
另一种方法可能是使用webhook 之类的东西,并从您使用的任何 CI/CD 平台向端点包含 HTTP 请求。
这样,您可以在发生更改时 ping 端点并自动更新,而不是检查更新。 它是推而不是拉,但它可以达到类似的效果。
运行 Web 服务器之类的示例脚本可能是:
#!/bin/bash
docker pull [your-registry][repo]:latest
docker stop [repo-name]
docker rm [repo-name]
docker run -d --name [repo-name] -p 80:4000 --restart always [your-registry][repo]:latest
这不是最巧妙的部署方法。 您可能最好在生产中使用专用的 CI/CD 提供程序,它可以更好地编排构建、测试和部署管道。 但这是生成临时服务器的一种快速而肮脏的方式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.