開始使用 Container Registry
IBM Cloud® Container Registry 提供了多租戶私有映像 註冊處,您可以使用它來儲存 容器映像,並與 帳戶中的使用者分享。IBM Cloud
IBM Cloud 主控台包含了簡短的「快速入門」。 若要找出如何使用 IBM Cloud 主控台的詳細資訊,請參閱使用 Vulnerability Advisor 管理映像檔安全。
請不要將個人資訊放在容器映像檔、名稱空間的名稱、說明欄位或任何映像檔配置資料(例如,映像檔名稱或映像檔標籤)中。
開始之前
安裝 IBM Cloud 指令行介面 (CLI),以便執行 IBM Cloud ibmcloud 指令,請參閱 IBM Cloud CLI 入門。
以下說明假設您是在自己的帳戶中,並有權限進行所有操作。 如果您發現無法執行指令,而您的帳號是由其他人擁有和管理的成員,您可能缺乏正確的權限來設定和操作 Container Registry 服務。 在這種情況下,您必須請求管理員賦予您所需的 IAM 服務存取角色權限。 如需詳細資訊,請參閱 為何我無法開始使用 Container Registry?
安裝 Container Registry CLI
-
執行下列指令,安裝
container-registryCLI 外掛程式:ibmcloud plugin install container-registry如需安裝外掛程式的詳細資訊,請參閱 使用外掛程式擴充 IBM Cloud CLI。
設定名稱空間
建立 命名空間。 命名空間會在您指定的 資源群組 中建立,這樣您就可以在資源群組層級設定對命名空間中資源的存取。 如果您沒有指定資源群組,也沒有以資源群組為目標,則會使用預設的資源群組。 指定給資源群組的命名空間會顯示在 IBM Cloud 主控台的 Resource list 頁面。
-
登入 IBM Cloud。
ibmcloud login如果您有聯合 ID,請使用
ibmcloud login --sso來登入。 輸入您的使用者名稱,並使用 CLI 輸出中提供的 URL 擷取您的一次性密碼。 如果您有聯合 ID,則未使用--sso時登入失敗,而有使用--sso選項時登入成功。在要推送影像之前,您不需要登入 Container Registry,請參閱 步驟 5:將影像推送到您的命名空間。
-
新增命名空間以建立您自己的影像 儲存庫。 以您偏好的命名空間取代
MY_NAMESPACE。此名稱空間在相同地區的所有 IBM Cloud 帳戶中必須是唯一的。 名稱空間必須有 4 - 30 個字元,且只能包含小寫字母、數字、連字號 (-) 及底線 (_)。 名稱空間的開頭和結尾必須是字母或數字。
ibmcloud cr namespace-add MY_NAMESPACE您可以使用下列其中一個選項,將命名空間置於您所選擇的資源群組中。
- 在建立命名空間之前,請執行
ibmcloud target -g RESOURCE_GROUP指令,其中RESOURCE_GROUP是資源群組。 - 使用
-g選項指定資源群組。ibmcloud cr namespace-add指令的選項來指定資源群組。
如果您在嘗試建立命名空間時遇到問題,請參閱 為何我無法新增命名空間? 以獲得協助。
- 在建立命名空間之前,請執行
-
為了確保您的命名空間已建立,請執行
ibmcloud cr namespace-list指令。ibmcloud cr namespace-list -v
從註冊表抽取影像至本機電腦
-
安裝 Docker 或您選擇的工具,例如 Podman。
-
WindowsmacOS 對於 Windows® 8 或 X Yosemite 或更早版本,請改安裝 macOS 10.10.xDocker Desktop。
如需 IBM Cloud Container Registry 支援的 Docker 版本的詳細資訊,請參閱 支援 Docker。
-
安裝 Podman.
-
-
下載 (拉取) 影像到您的本機電腦。 將
SOURCE_IMAGE改為影像的儲存庫,並將TAG改為您要使用的影像 標籤,例如latest。 例如,根據您使用的工具,執行下列其中一個指令。-
如果您使用 Docker,請執行下列指令。
docker pull SOURCE_IMAGE:TAG例如,其中
SOURCE_IMAGE是hello-world,TAG是latest:docker pull hello-world:latest如果您在嘗試拉取 Docker 影像時遇到問題,請參閱 為何我無法推送或拉取 Docker 影像? 以取得協助。 如果使用
latest標籤無法取得最新圖片,請參閱 為何使用latest標籤無法取得最新圖片? 以取得協助。 -
如果您使用 Podman,請執行下列指令。
podman pull SOURCE_IMAGE:TAG例如,其中
SOURCE_IMAGE是hello-world,TAG是latest:podman pull hello-world:latest
-
標記圖片
若要標記影像,請將 SOURCE_IMAGE 替換為儲存庫,並將 TAG 替換為您先前拉取的本機影像的標記。 將 REGION 改為您所在 區域 的名稱。 以您在 設定命名空間 中建立的命名空間取代 MY_NAMESPACE。 將 NEW_IMAGE_REPO 改為影像儲存庫的名稱,並將 NEW_TAG 改為標籤,以定義要在命名空間中使用的影像儲存庫和標籤。 例如,根據您使用的工具,執行下列其中一個指令。
若要查找您所在區域的名稱,請執行 ibmcloud cr region 指令。
-
如果您使用 Docker,請執行下列指令。
docker tag SOURCE_IMAGE:TAG REGION.icr.io/MY_NAMESPACE/NEW_IMAGE_REPO:NEW_TAG例如,其中
SOURCE_IMAGE是hello-world,TAG是latest,REGION是uk,MY_NAMESPACE是namespace1,NEW_IMAGE_REPO是hw_repo,NEW_TAG是1:docker tag hello-world:latest uk.icr.io/namespace1/hw_repo:1 -
如果您使用 Podman,請執行下列指令。
podman tag SOURCE_IMAGE:TAG REGION.icr.io/MY_NAMESPACE/NEW_IMAGE_REPO:NEW_TAG例如,其中
SOURCE_IMAGE是hello-world,TAG是latest,REGION是uk,MY_NAMESPACE是namespace1,NEW_IMAGE_REPO是hw_repo,NEW_TAG是1:podman tag hello-world:latest uk.icr.io/namespace1/hw_repo:1
推送影像到您的命名空間
-
使用下列選項之一登入 IBM Cloud Container Registry。
-
若要使用 Docker 登入,請執行
ibmcloud cr login指令,將本機 Docker daemon 登入 IBM Cloud Container Registry。ibmcloud cr login --client docker -
若要使用 Podman 登入,請執行
ibmcloud cr login指令登入 IBM Cloud Container Registry。ibmcloud cr login --client podman -
若要使用其他用戶端登入,請參閱以 互動方式存取您的命名空間。
如果您在嘗試登入時遇到問題,請參閱 為何我無法登入 Container Registry? 以獲得協助。
-
-
上傳 (推送) 影像到您的命名空間。 以您在 設定命名空間 中建立的命名空間取代
MY_NAMESPACE。 將IMAGE_REPO和TAG改為您在標記影像時所選擇的儲存庫和影像的標記。 例如,根據您使用的工具,執行下列其中一個指令。-
如果您使用 Docker,請執行下列指令。
docker push REGION.icr.io/MY_NAMESPACE/IMAGE_REPO:TAG例如,其中
REGION是uk,MY_NAMESPACE是namespace1,IMAGE_REPO是hw_repo,TAG是1:docker push uk.icr.io/namespace1/hw_repo:1如果您在嘗試推送 Docker 影像時遇到問題,請參閱 為何我無法推送或拉取 Docker 影像? 以取得協助。
-
如果您使用 Podman,請執行下列指令。
podman push REGION.icr.io/MY_NAMESPACE/IMAGE_REPO:TAG例如,其中
REGION是uk,MY_NAMESPACE是namespace1,IMAGE_REPO是hw_repo,TAG是1:podman push uk.icr.io/namespace1/hw_repo:1
-
確認影像已推送
執行下列指令,驗證已順利推送映像檔。
ibmcloud cr image-list
您已在 IBM Cloud Container Registry 中設定名稱空間,並將您的第一個映像檔推送至名稱空間。
為以下項目中的變更設定稽核追蹤 Container Registry
透過擷取每個使用中 Container Registry 區域的活動事件,為 Container Registry 中的變更建立稽核追蹤。 在 IBM Cloud Logs 的一個或多個實例中建立這些活動事件。
若要設定稽核追蹤,請完成下列步驟:
- 設定 IBM Cloud Logs,請參閱 開始使用 IBM Cloud Logs。
- 設定 IBM Cloud Activity Tracker Event Routing,請參閱 開始使用 IBM Cloud Activity Tracker Event Routing。
- 設定 IBM Cloud Logs 目標,請參閱 設定 IBM Cloud Logs 範例為目標。
如需更多關於記錄的資訊,請參閱 關於 IBM Cloud Logs 和 記錄 Container Registry。
如需有關活動事件的詳細資訊,請參閱 有關 IBM Cloud Activity Tracker Event Routing 及 Container Registry 的活動追蹤事件。
監控 Container Registry
您可以在要監控的區域中建立 Monitoring 範例,並為其啟用平台指標。 或者,您可以在該區域的現有 Monitoring 範例上啟用平台度量。
如需更多關於設定指標的資訊,請參閱 啟用 Container Registry 的指標 和 開始使用 Monitoring。