在docker中,如何顯示當前登錄的當前註冊表信息?我安裝了docker,如果我現在執行docker push,它在哪裏發送我的圖像?Docker顯示當前註冊表
我花了30多分鐘從Google和docker文檔中搜索這些信息,並且無法找到它,所以我認爲它應該有自己的問題。
在docker中,如何顯示當前登錄的當前註冊表信息?我安裝了docker,如果我現在執行docker push,它在哪裏發送我的圖像?Docker顯示當前註冊表
我花了30多分鐘從Google和docker文檔中搜索這些信息,並且無法找到它,所以我認爲它應該有自己的問題。
沒有「當前」註冊表的概念 - 完整圖像標籤始終包含註冊表地址,但如果未指定註冊表,則將Docker Hub用作默認設置。因此docker push user/app
推到碼頭集線器。如果你想將它推到你需要與註冊地址明確地標記它的本地註冊表:
docker tag user/app localhost:5000/user/app
docker push localhost:5000/user/app
如果你的本地註冊表被固定,你需要運行docker login localhost:5000
但不改變默認的註冊表。如果您在標籤中推送或拉出沒有註冊表地址的圖像,Docker將始終使用Hub。
This issue解釋理由。
碼頭圖像的工作方式並不是最明顯的,但很容易解釋。
您的圖像將被髮送到的位置必須在圖像名稱中定義。 當你提交一個圖像,你必須命名它[註冊表IP]:[註冊表端口]/[圖像路徑]/[圖像名稱]
如果您已經創建了圖像,並且想要將圖像發送給本地註冊表你必須標記它包括註冊表路徑,然後將其推:
搬運工標籤[圖片名稱] [註冊表-IP]:[註冊表端口]/[圖片名稱]
搬運工推[註冊表IP]:[註冊表端口]/[圖像名稱]
感覺很不錯的答案。我可以以同樣的方式拉出圖像嗎?如果我想使用私人註冊表(本地或外部),我需要先登錄,然後確保圖像標籤包含私人註冊表地址,然後推送它? –
是的,確切地說。假設你想要你自己的Ubuntu基礎鏡像:'docker pull ubuntu'可以獲得Hub的官方映像; 'docker標籤ubuntu localhost:5000/bases/ubuntu'標籤爲本地註冊表; 'docker push localhost:5000/bases/ubuntu'在本地推送它。然後你調用'docker pull localhost:5000/bases/ubuntu',或者在Dockerfiles中使用它:'FROM localhost:5000/bases/ubuntu' –