0

每个人。我正在运行 Docker

Client:
 Version:      1.8.2
 API version:  1.20
 Go version:   go1.4.2
 Git commit:   0a8c2e3
 Built:        Thu Sep 10 19:19:00 UTC 2015
 OS/Arch:      linux/amd64

Server:
 Version:      1.8.2
 API version:  1.20
 Go version:   go1.4.2
 Git commit:   0a8c2e3
 Built:        Thu Sep 10 19:19:00 UTC 2015
 OS/Arch:      linux/amd64

 Kernel Version: 3.16.0-53-generic 
 Operating System: Ubuntu 14.04.2 LTS

几个星期以来,一切似乎都很好。我能够为注册表提取容器并毫无问题地运行它们。

现在我希望使用Watchtower自动刷新。但是,我很难做到这一点。首先,我尝试将 Watchtower 作为 README 中的状态运行

docker run -d \
  --name watchtower \
  -v /var/run/docker.sock:/var/run/docker.sock \
  centurylink/watchtower

但是在 Docker Hub 上创建新映像并等待默认的 5 分钟后,什么也没发生。

所以我尝试访问 Watchtower 容器以查看是否一切正常,但是当我运行时,docker run -t -i centurylink/watchtower /bin/bash我得到了

FATA[0000] Get http://unix.sock/v1.15/containers/json?all=0&size=0: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a TLS-enabled daemon without TLS?

文件unix /var/run/docker.sock存在且用户是 docker 组的成员

user@server1:/$ grep 'docker' /etc/group docker:x:999:user

更新 1 - 见评论

如果我跑,docker logs container-id-of-watcher-container我会得到

user@server1:~$ docker logs 504ba2eb37fd
time="2016-04-18T06:54:30Z" level=info msg="Checking containers for updated images"
time="2016-04-18T06:59:30Z" level=info msg="Checking containers for updated images"
time="2016-04-18T07:04:30Z" level=info msg="Checking containers for updated images"
time="2016-04-18T07:09:30Z" level=info msg="Checking containers for updated images"
time="2016-04-18T07:14:30Z" level=info msg="Checking containers for updated images"
time="2016-04-18T07:19:30Z" level=info msg="Checking containers for updated images"
time="2016-04-18T07:24:30Z" level=info msg="Checking containers for updated images"
time="2016-04-18T07:29:30Z" level=info msg="Checking containers for updated images"

更新 2

我发现了这个问题。在将 Watchtower 限定为单个图像时,我应该使用容器名称而不是图像名称。

然而,现在的问题是。如何更新私人图像?

谢谢。

4

1 回答 1

0

恭喜你弄明白了!

我刚刚发布了关于如何使用私有注册表作为这个问题的答案:

守望台的维护者和开发者在这里。实际上,我们确实支持使用私有注册表。这是通过使用完全限定名称作为图像名称来完成的,即。example.com/my-org/my-image:my-tag,以及在瞭望塔容器根目录安装 config.json。

请参阅文档,特别是https://containrrr.github.io/watchtower/usage-overview/

文档可能会更清晰,如果您对这项任务感到满意,请在完成工作后随时改进它们。

于 2019-08-07T11:28:25.167 回答