在第二部分,按照步驟構建鏡像並將其做爲一個容器化應用程序運行。html
如今,您已經在本地開發機器上構建了第二部分中描述的容器化應用程序。開發容器化應用程序的最後一步是在像 Docker Hub 這樣的註冊表上共享鏡像,以便它們能夠被輕鬆地下載和運行在任意目標機器上。node
若是您沒有 Docker ID,請按照如下步驟建立一個。Docker ID 容許你在 Docker Hub 上共享鏡像。docker
您還能夠從命令行輸入 docker login
登陸 Docker Hub。瀏覽器
在建立倉庫以前,請確保您已設置您的 Docker Hub 帳戶並將其鏈接到 Docker Desktop。app
如今,讓咱們建立第一個倉庫,並將公告欄鏡像推送到 Docker Hub。工具
單擊菜單欄中的 Docker 圖標,導航到 Repositories > Create。您將被重定向到 Docker Hub 上的 Create Repository 頁。學習
輸入倉庫名 bulletinboard
而後在頁面底部點擊 Create 。暫時不要填寫任何其餘細節。
ui
您如今已經準備好在 Docker Hub 上共享鏡像了,可是,必須先作一件事:鏡像必須正確地設置命名空間,才能在 Docker Hub 上共享。具體來講,您必須將鏡像命名爲:
<Your Docker ID>/<Repository Name>:<tag>
。命令行
請確保您在終端或者 PowerShell 中的 node-bulletin-board/bulletin-board-app
目錄下,而後運行:版本控制
docker tag bulletinboard:1.0 <Your Docker ID>/bulletinboard:1.0
最後,將您的鏡像推送到 Docker Hub:
docker push <Your Docker ID>/bulletinboard:1.0
在 Docker Hub 中訪問您的倉庫,您將在那裏看到您新的鏡像。記住,Docker Hub 倉庫在默認狀況下是公開的。
推送遇到麻煩?請記住,您必須經過 Docker Desktop 或命令行登陸到 Docker Hub,而且必須按照上述步驟正確命名您的鏡像。若是推送看起來有效,但在 Docker Hub 中看不到新的鏡像,請在幾分鐘後刷新瀏覽器,而後再次檢查。
如今您的鏡像已經能夠在 Docker Hub 上使用了,您能夠在任何地方運行它了。若是您試圖在一臺尚未它的新機器上使用它,Docker 將自動嘗試從Docker Hub 下載它。經過這種方式移動鏡像,您再也不須要在想要運行您的軟件的機器上安裝除了 Docker 之外的任何依賴項。容器化應用程序的依賴項徹底封裝並隔離在您的鏡像中,您能夠使用上面描述的 Docker Hub 來共享鏡像。
另外一件須要記住的事情是:目前,您只是把您的鏡像推送到了 Docker Hub,您的 Dockerfile 呢?一個關鍵的最佳實踐是將它們保存在版本控制中,可能與應用程序的源代碼放在一塊兒。您能夠在 Docker Hub 倉庫描述中添加一個連接或註釋,指示在何處能夠找到這些文件,這樣不只能夠保存鏡像如何構建的記錄,還能夠保存鏡像做爲完整的應用程序運行的記錄。
咱們建議您看一下 Develop with Docker 中的主題,學習如何使用 Docker 開發您本身的應用程序。