2017-08-30 62 views
0

我有2個服務應該運行在我添加到我的Swarm(Docker),serviceG和serviceR,serviceG處於全局模式的機器上,serviceR處於複製模式。Docker Swarm,機器啓動時,新機器不會拉動'replicate'服務鏡像

當我向碼頭羣添加新機器時,serviceG的圖像會自動拉出,但是serviceR的圖像不會自動拉出。

如果我在其他機器上移除了一個serviceR容器,圖像被拉到我的新機器上,然後現在可以在新機器上啓動容器。

圖像都存儲在同一個存儲庫。

我可以使用,當機器啓動泊塢拉,但我想,當新機服務R.

回答

1

爲設計這是正常工作的形象加入大羣自動完成拉。 Swarm模式不會過早地重新平衡羣中的工作負載。否則可能會導致工作負載重新安排到抖動或其他故障節點上,並且通常會導致服務可用性降低。

如果您需要手動強制滾動更新,以平衡你的服務,你可以運行:

docker service update --force your_service_name 

如果你只是想拉一個圖像,而不是運行它,您可以直接登錄到新節點並運行docker pull your_image_name

+0

感謝您的回答,完全忘了我可以使用'docker service update --force your_service_name',現在我知道爲什麼Swarm的行爲是這樣的:) – Nolyurn

相關問題