docker服务创build没有find图像

当我运行docker服务创build – 模式全局foo myrepo / foo-img:0.1,它的工作原理是它启动服务,但如果foo-img:0.1不存在于群中的节点上,该节点发出以下错误:

<containerid> \_ foo myrepo/foo:0.1 <snip> "No such image: myrepo/foo-img:0.1" 

如果我拉myrepo / foo-img:0.1在每个节点上,那么它工作正常。

除了在群中的每个节点上拉取图像之外,是否有解决方法?

答案其实很简单。 使用--with-registry-auth参数。 此参数使用与当前会话使用的相同的身份validation。 所以,要做到这一点,你只需简单地:

 # docker login -u xxx -pass yyy https://myrepo.com # service create --with-registry-auth foo myrepo.com/foo-img:0.1 

假设您已成功login,服务将根据需要将图像从回购站点拖放到每个节点。 不确定幕后发生了什么,但它适用于部署到群集中的所有节点! 感谢github / docker的伙伴们的帮助!