摘要:在AWS / EC2环境中执行“ docker stack deploy”时,将使用本地(旧)映像。我该如何拒绝这种行为,以使“ docker stack”使用来自hub.docker.com的新映像?作为一种解决方法,我首先在执行“ docker stack deploy”之前从index.docker.com对映像进行“ docker pull”。是否需要此额外步骤?
情况: 在Jenkins服务器上(不在AWS / EC2上),我具有以下构建步骤:
Jenkinsfile中的下一步是通过AWS环境上的安全外壳(ssh)执行的:
当我执行此Jenkins作业时,泊坞窗映像是从AWS上的本地映像存储库中获取的。我想使用放在hub.docker.com上的最新图像。
当我在“ docker stack deploy”之前插入以下操作时,一切都会顺利进行:
我的问题:
答案 0 :(得分:0)
当然,不需要额外的docker pull。
对您有什么帮助?
servicename: image: index.docker.io/dockerhub-username/image-name
那对您有帮助。
这可能是由于您在本地或在单独的Jenkins服务器上构建,将映像推送到Docker集线器并在EC2的远程Shell上启动这一事实。在该EC2上,只有当前图像。
我为您尝试了上述解决方案,并且有效。
您可以只执行'docker stack deploy'并使用正确的映像。