建立倉庫若要推送映像檔,您首先需要在 Docker Hub 上建立一個倉庫。
註冊 或登入 Docker Hub。
選擇「建立倉庫」按鈕。
倉庫名稱使用 getting-started
。 確保「可見度」設定為「公開」。
選擇「建立」。
在下圖中,您可以看到 Docker Hub 中 Docker 命令的範例。 此命令將推送至這個倉庫。
在命令列中,執行您在 Docker Hub 上看到的 docker push
命令。 請注意,您的命令將會使用您的 Docker ID,而不是「docker」。 例如,docker push 您的使用者名稱/getting-started
。
為什麼會失敗? push 命令正在尋找名為 docker/getting-started
的映像檔,但找不到。 如果您執行 docker image ls
,您也不會看到它。
若要解決此問題,您需要標記您已建置的現有映像檔,為其指定另一個名稱。
使用 docker login -u 您的使用者名稱
命令登入 Docker Hub。
使用 docker tag
命令為 getting-started
映像檔指定新的名稱。 將「您的使用者名稱」替換為您的 Docker ID。
現在再次執行 docker push
命令。 如果您是從 Docker Hub 複製該值,則可以捨棄 tagname
部分,因為您沒有在映像檔名稱中加入標記。 如果您沒有指定標記,Docker 會使用名為 latest
的標記。
現在您的映像檔已建置並推送至倉庫,請嘗試在從未見過此容器映像檔的全新執行個體上執行您的應用程式。 為此,您將使用 Play with Docker。
**注意事項**
Play with Docker 使用 amd64 平台。 如果您使用的是搭載 Apple 晶片的 ARM 架構 Mac,您需要重建映像檔才能與 Play with Docker 相容,並將新的映像檔推送至您的倉庫。
若要建置適用於 amd64 平台的映像檔,請使用 --platform
旗標。
Docker buildx 也支援建置多平台映像檔。 若要深入瞭解,請參閱多平台映像檔。
在瀏覽器中開啟 Play with Docker。
選擇「登入」,然後從下拉式清單中選擇「docker」。
使用您的 Docker Hub 帳戶登入,然後選擇「開始」。
選擇左側欄上的「新增執行個體」選項。 如果您沒有看到它,請將瀏覽器視窗加寬一些。 幾秒鐘後,瀏覽器中會開啟一個終端機視窗。
在終端機中,啟動您剛推送的應用程式。
您應該會看到映像檔被拉取下來並最終啟動。
**提示**
您可能已經注意到,此命令將埠映射繫結至不同的 IP 位址。 先前的 docker run
命令將埠發佈至主機上的 127.0.0.1:3000
。 這次,您使用的是 0.0.0.0
。
繫結至 127.0.0.1
只會將容器的埠公開至迴路介面。 然而,繫結至 0.0.0.0
會將容器的埠公開至主機的所有介面,使其可供外部世界使用。
有關埠映射運作方式的詳細資訊,請參閱網路。
出現 3000 標記時選擇它。
如果沒有出現 3000 標記,您可以選擇「開啟埠」並指定 3000
。
在本節中,您學習了如何透過將映像檔推送至倉庫來分享它們。 然後,您前往全新的執行個體,並能夠執行剛推送的映像檔。 這在 CI 管線中相當常見,管線會建立映像檔並將其推送至倉庫,然後生產環境可以使用最新版本的映像檔。
相關資訊
在下一節中,您將學習如何在容器化應用程式中保存資料。