🚀 在 VS Code 中免費取得

使用容器登錄檔

容器登錄檔是一種儲存和內容傳遞系統,用於存放具名的 Docker 映像,並提供不同的標籤版本。

使用者可以從以下來源連線至 Docker 登錄檔

將映像推送至容器登錄檔

在部署 Docker 映像之前,必須先將映像上傳至容器登錄檔。映像可以上傳至 Docker HubAzure Container Registry (ACR) 或其他登錄檔。無論您要推送至 Docker Hub、Azure Container Registries 或任何其他登錄檔,都可以按照相同的步驟來推送映像。如果您還沒有 Azure Container Registry,可以在「推送」步驟中建立一個。

  1. 開啟 Docker 總管,選取「登錄檔」群組下的「連線登錄檔...」圖示,然後依照提示操作。選擇提供者 (例如 Azure 或 Docker Hub) 並提供認證以連線至登錄檔。如果出現提示,請安裝 Azure Resources 擴充功能。

    Connect to Registry

  2. 現在登錄檔將會顯示在「登錄檔」下方。

    Registries

  3. 您可以選擇性地為映像加上標籤。為了將映像上傳至登錄檔,映像需要使用登錄檔名稱加上標籤,以便 docker push 將其上傳至正確的登錄檔。如果您在嘗試推送映像時未加上標籤,VS Code 會詢問您要將映像與哪個登錄檔建立關聯。

    • 您先前建置的映像會顯示在 Docker 總管的「映像」索引標籤下。按一下滑鼠右鍵並選擇「標籤...」。

      Tag image

    • 指定新名稱 <您的登錄檔或使用者名稱>/<映像名稱>:<標籤> 並完成標籤動作。例如,ACR 的新映像名稱為 mainacr.azurecr.io/webapp6:latest,而 Docker Hub 的新映像名稱為 myusername/webapp6:latest

  4. 映像會顯示在 Docker 總管的「映像」索引標籤中,位於映像標籤指向的登錄檔下方。選取此映像並選擇「推送」。如果映像尚未加上標籤,系統會提示您選擇要推送到的登錄檔,或建立新的登錄檔,並根據您的選擇為映像加上標籤。

    Push image

  5. 推送命令完成後,重新整理映像推送到的登錄檔節點,上傳的映像就會顯示出來。

    Refresh registry

Docker Hub

這會連線至 Docker Hub 並列出指定帳戶下的所有儲存庫和映像。選取此選項後,系統會要求您輸入 Docker Hub 認證。

Docker Hub

針對 Docker Hub 登錄檔中的每個儲存庫,可以執行以下動作

  • 提取儲存庫:在本機複製指定儲存庫中的所有映像
  • 在瀏覽器中開啟:開啟瀏覽器並導覽至 Docker Hub 上指定的儲存庫
  • 重新整理:重新整理儲存庫以反映變更

針對儲存庫中的每個已標籤映像,可以執行以下動作

  • 提取映像:在本機複製映像的最新版本
  • 複製完整標籤:將完整標籤複製到剪貼簿
  • 將映像部署到 Azure App Service:將映像部署到 Azure App Service,請參閱將映像部署到 Azure 頁面
  • 將映像部署到 Azure Container Apps:將映像部署到 Azure Container Apps,請參閱將映像部署到 Azure 頁面
  • 在瀏覽器中開啟:開啟瀏覽器並導覽至 Docker Hub 上指定的映像

Azure Container Registry

此選項需要 Azure Resources 擴充功能才能連線至您的 Azure 帳戶,並顯示所有不同的訂用帳戶和登錄檔。通過驗證後,「Azure」節點將會顯示訂用帳戶以及每個訂用帳戶所擁有的登錄檔

Azure Container Registry

針對每個登錄檔,使用者可以使用上下文功能表執行不同的動作

Azure registry context menu

  • 刪除登錄檔:永久刪除登錄檔
  • 在入口網站中開啟:開啟瀏覽器並導覽至 Azure 入口網站中的登錄檔
  • 檢視屬性:以 json 格式開啟登錄檔屬性
  • 重新整理:重新整理登錄檔以反映變更

針對指定登錄檔中的每個儲存庫,可以執行以下動作

Azure repository context menu

  • 提取儲存庫:在本機複製指定儲存庫中的所有映像
  • 刪除儲存庫:永久刪除儲存庫
  • 重新整理:重新整理儲存庫以反映變更

針對儲存庫中的每個已標籤映像,可以執行以下動作

Azure image context menu

  • 提取映像:在本機複製映像的最新版本
  • 複製完整標籤:將完整標籤複製到剪貼簿
  • 複製映像摘要:將映像摘要 (Docker 使用的 SHA256 雜湊識別碼) 複製到剪貼簿。如需有關映像摘要的詳細資訊,請參閱 Docker 文件
  • 檢查映像資訊清單:檢查映像的登錄檔資訊清單。這與在本機提取映像時檢查映像不同。
  • 將映像部署到 Azure App Service:將映像部署到 Azure App Service,請參閱將映像部署到 Azure 頁面
  • 將映像部署到 Azure Container Apps:將映像部署到 Azure Container Apps,請參閱將映像部署到 Azure 頁面
  • 取消標籤映像:取消映像的標籤
  • 刪除映像:永久刪除映像

GitHub

這會連線至您 GitHub 帳戶中的 Docker 登錄檔。選取此選項後,系統會要求您輸入 GitHub 帳戶認證。

GitHub

針對 GitHub 登錄檔中的每個儲存庫,可以執行以下動作

  • 提取儲存庫:在本機複製指定儲存庫中的所有映像
  • 重新整理:重新整理儲存庫以反映變更

針對儲存庫中的每個已標籤映像,可以執行以下動作

  • 提取映像:在本機複製映像的最新版本
  • 複製完整標籤:將完整標籤複製到剪貼簿
  • 複製映像摘要:將映像摘要 (Docker 使用的 SHA256 雜湊識別碼) 複製到剪貼簿。如需有關映像摘要的詳細資訊,請參閱 Docker 文件
  • 檢查映像資訊清單:檢查映像的登錄檔資訊清單。這與在本機提取映像時檢查映像不同。
  • 將映像部署到 Azure App Service:將映像部署到 Azure App Service,請參閱將映像部署到 Azure 頁面
  • 將映像部署到 Azure Container Apps:將映像部署到 Azure Container Apps,請參閱將映像部署到 Azure 頁面

後續步驟