Docker 堆栈部署不会从私有注册表中提取映像,即使使用 --with-registry-auth 也是如此



我正在使用 docker 堆栈和 docker-compose 文件使用以下命令部署容器

docker stack deploy --with-registry-auth -c compose.yml app

初始部署成功,但当我重新运行该命令时,出现以下容器错误:

Updating service sparkful_nginx (id: <some_id>)
image <image_url> could not be accessed on a registry to record
its digest. Each node will access <image_url> independently,
possibly leading to different nodes running different
versions of the image.

PS:我正在使用GitHub注册表。

您可能需要在每台计算机上进行 docker 登录,然后

docker login -u username -p password registry.hub.Docker.com/myproject 
docker stack deploy -c Docker-swarm.yml test --with-registry-auth

正如这里解释的那样

参考: http://littlebigextra.com/installing-docker-images-private-repositories-docker-swarm/

使用Github注册表更新,这是目前未解决的已知问题。 https://github.com/containerd/containerd/issues/3291#issuecomment-579804848

最新更新