2017-04-19 56 views
4

我想使用碼頭堆棧部署來部署本地節點應用程序。我有一個可怕的時間獲得一個良好的工作流程。碼頭堆棧部署本地圖像

我對堆棧部署和與Docker集線器的關係感到困惑。我很高興不得不在本地構建圖像,但推動它是一個問題,因爲我的網絡速度很慢,圖像大小爲169MB。

我的問題是,如果我只是在本地構建映像,是否應該由docker stack deploy部署?或者我是否總是必須將新圖像發佈到碼頭中心?現在它已發佈到私有存儲庫。

爲什麼我問? 我試圖做一個本地docker build -t myname/myimage:latest,然後重新部署與碼頭堆棧部署docker-compose.yml引用圖像myname/myimage:latest - 但是另一個圖像不斷從24小時前重新出現,即使我使用docker rmi(一次又一次)在本地刪除它。然後服務無法啓動,應該在新版本中解決錯誤。

我只能認爲通過堆棧部署部署的容器是基於Docker集線器發佈的容器而不是本地鏡像。當然,不斷出現在docker images中的圖像的大小與當前位於碼頭集線器中的舊圖像相匹配,而不是新的。

也許我做錯了什麼或誤解堆棧部署的工作原理?

+2

我猜泊塢窗部署命令只適用於對存儲庫圖像,如果你想運行一個本地的圖像,你必須運行碼頭工人,組成了,it's只是猜測,因爲我有同樣的問題和這是如何爲我工作 –

回答

0

你應該嘗試建立當地的形象是這樣的:

docker build -t myimage .

,並指其爲「MYIMAGE:最新的」在撰寫文件,如果你想使用本地圖像。

如果要推這個到集線器,然後將其標記爲第一

docker tag id_of_myimage my_dockerhub_username/myimage:latest

,然後推動它。

docker push my_dockerhub_username/myimage:latest

+1

它適用於新建,但如果我更新堆棧,我得到此錯誤:'無法固定圖像rsc:最新消化:錯誤: denied:請求訪問資源是被拒絕 未授權:需要驗證' - 我試着運行'--with-registry-auth',但在這種情況下沒有幫助。 –