问题标签 [docker-watchtower]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - 带有私有注册表的 Docker 瞭望塔
每当我将新版本推送到我的私有注册表时,我想运行一个 docker watchtower 来自动升级我的 docker 容器。
但是,瞭望塔在我的私人注册表中找不到容器。
有谁知道如何使用私有 docker 注册表运行瞭望塔?
docker-watchtower - 无法运行 Watchtower - FATA [0000] /var/run/docker.sock: 没有这样的文件或导向器
每个人。我正在运行 Docker
上
几个星期以来,一切似乎都很好。我能够为注册表提取容器并毫无问题地运行它们。
现在我希望使用Watchtower自动刷新。但是,我很难做到这一点。首先,我尝试将 Watchtower 作为 README 中的状态运行
但是在 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
我会得到
更新 2
我发现了这个问题。在将 Watchtower 限定为单个图像时,我应该使用容器名称而不是图像名称。
然而,现在的问题是。如何更新私人图像?
谢谢。
docker - 发布新图像时更新 docker 容器
除了瞭望塔,我们还有什么其他工具可以在新镜像发布时更新容器?
Watchtower 看起来不错,但不支持除 docker hub 之外的私有注册表,即我想使用 gitlab 注册表。
linux - Docker 容器在运行时立即退出
我在树莓派零上运行 docker,我在启动时使用 systemd 启动了望塔和我的容器。如果我用手运行它或在启动时由 systemd 运行,我的容器就可以自行工作,但是当我推送新图像时,我的私人仓库瞭望塔检测到新版本.. 停止,删除并尝试运行新版本,但此时容器退出137 立即(运行 3 秒后)。
这是退出容器的日志:
这是检查命令的结果:
这里了望塔systemd服务:
这里我的应用系统服务:
这是我的 Docker 文件:
docker - Docker Swarm 用于管理无头容器并保持更新(或瞭望塔?)
我一直在尝试设计一种使用 Docker Swarm 来管理一堆无头容器的策略——不需要负载均衡器、暴露任何端口或自动缩放。
我唯一想要的是能够更新所有容器(在所有节点上),如果有任何图像被更新。每个运行的容器都需要有一个特定的--hostname
.
跑步docker service
甚至可行吗?还是我应该只docker run
针对特定节点进行正常的定位来指定--hostname
我想要的?我什至问的原因docker service
是因为它允许您进行更新(如果有更新的图像,则强制更新所有容器)。
还认为 Docker Swarm 可以更轻松地监视所有容器(即从中心位置管理它们)。
我在看的另一个选择是瞭望塔,在运行其中一个容器的每台服务器上运行,作为 swarm 的替代方案。我唯一的问题是它不提供任何编排,用于集中管理。
鉴于这种情况,任何人都知道什么是更好的选择?
docker - 带有瞭望塔的 Docker 自定义注册表
我在带有 Ubuntu 操作系统的本地网络中有 2 个虚拟机。其中之一安装了具有基本身份验证(htpasswd)但没有任何证书的 Docker 注册表容器。通常我从其他“客户端”机器访问注册表并且可以提取图像。但是,当我尝试在客户端机器上安装瞭望塔时,它会立即退出
django - 是否可以在 aws 的单个文件中写入瞭望塔日志
我开发了一个小应用程序。对于日志,我在 aws 中使用了望塔。日志工作正常。日志通过 aws 中的文件明智日志插入到 cloudwatch中,但我希望所有日志仅注册在一个文件中(例如 api.views )。这可能吗?如果是,如何?
amazon-web-services - 无法更新 docker 映像。错误:存储库不存在或可能需要“docker login”
我已经部署了瞭望塔,它会自动更新Docker Swarm中正在运行的 Docker 容器。
我在两台AWS EC2服务器上运行这个 Docker Swarm,并使用 AWS ECR 作为 Docker 注册表。
为了避免aws ecr get-login
我使用了Amazon ECR Docker Credential Helper,它会在 docker push/docker pull 上自动获取 Amazon ECR 的凭证,并且无需在 12 小时内登录 ech。
问题是瞭望塔抛出如下错误:
time="2019-03-12T03:41:10Z" level=info msg="Unable to update container /crmproxy.1.wop3c1u2qktbkab8rukrlrgr6, err='来自守护进程的错误响应: pull access denied for 00000000000.dkr..amazonaws.com /crm,存储库不存在或可能需要“docker login”。继续下一步。”
我确信这与登录 ECR 无关。我已使用 docker -compose.yml文件将凭据正确链接到 WATCHTOWER 容器中。
这是 docker-compose.yml 文件上的瞭望塔配置。
在我对这个问题的研究中,我看到其他人和我有同样的问题,并且有人自己解决了这个问题,但我不明白。
这就是我发现的:尚不清楚的解决方案
我不完全知道这个答案是否正确。但他说:
问题是我以root身份安装了docker。现在使用 Amazon Linux AMI 的 ec2-user 安装并正常工作
请帮助我避免我面临的这个问题。我试了很多次。任何帮助都会对我有利。
docker - Docker Watchtower 无法从 AWS ECR 拉取新镜像
我已经安装了 Watchtower,并按照文档设置了带有身份验证助手的私有注册表身份验证。在调试模式下,我看到它记录了一条消息,表明已获得身份验证值,但随后它无法使用“没有基本身份验证凭据”提取图像。检查身份验证值,它只是我配置中的主机名,没有凭据。我验证了在主机系统(Raspbian)上,我能够使用相同的 docker 配置提取新版本,而无需执行任何自定义身份验证,一切都可以使用相同的二进制文件开箱即用。
这是我的码头配置:
这是我的码头工人撰写:
当瞭望塔尝试检查新图像时,这里是日志文件:
解压 auth 值,它只有主机名。没有存储库凭据。
我试图遵循“ Credential helpers ”文档,但我不确定我是否理解上述 Dockerfile 的所属位置。
任何正确方向的指针将不胜感激。谢谢!
docker - 瞭望塔更新泊坞窗图像
瞭望塔将在推送到私有或公共仓库时更新 docker 镜像。有没有办法让它更细化?前任:
dockeraname 图像 名
docker1 ubuntu16.04
docker2 ubuntu16.04
docker3 ubuntu16.04
docker4 ubuntu16.04
借助 watchtower 或任何其他开源工具的帮助,如何指定仅将 docker1 和 docker2 更新为最新的 ubuntu 并保持 docker3 和 docker4 的版本相同?