2017-02-22 94 views
4

我建立了由三名工人和一名經理組成的碼頭羣集羣。我想使用自定義的Dockerfile從圖像版本啓動三名工作人員的容器。 進行節點的登記正確經理:Docker swarm無法在創建服務時創建圖像以進行消化

docker node ls 
ID       HOSTNAME STATUS AVAILABILITY MANAGER STATUS 
0viqhgcdwul2vhvmgxbv31eg0 worker1 Ready Active   
mabikwr5ufwa7lv8xk0liyqbd worker3 Ready Active   
s1m1qiarlyfgtljghgomcztlb worker2 Ready Active   
tqp7m2ohzvgqc9c60aex4x9u5 * manager Ready Drain   Leader 

但是,當我執行以下命令,

docker service create --replicas 3 -p 8080:8080 --name myService myImage 

worker1不執行容器和我得到了以下錯誤:

unable to pin image myImage to digest: errors: 
denied: requested access to the resource is denied 
unauthorized: authentication required 

總是worker1失敗,其他人恰好正確,圖像按預期工作。它從哪裏來,我該如何解決這個問題?

+0

Docker版本? – gile

+1

檢查--with-registry-auth選項是否爲您完成這項工作。如果您使用私有存儲庫或某些私有存儲庫,則必須傳遞認證信息。 – YuKYuK

+0

@gile Docker版本1.13.1,版本092cba3 –

回答

3

好吧,我的壞。我認爲經理會以某種方式將圖像發送到其他節點,但它並不明顯。由於某種原因,工人2和3有一個圖像的副本,所以他們可以找到它,但不是工人1 ...

無論如何,感謝您的答案。

+0

是的。看看https://github.com/docker/docker/pull/28173 – gile