Docker是一個容器化平台,不提供鏡像的託管能力,您可以通過將Docker鏡像推送至ACR個人版執行個體,來使用基礎的Container Registry和安全的應用鏡像託管能力,以及供他人拉取該鏡像。
前提條件
已安裝Docker。具體操作,請參見安裝Docker並使用(Linux)。
已繫結來源代碼平台或本地已構建鏡像。具體操作,請參見繫結來源代碼託管平台、本地構建和推送多架構鏡像到Container Registry。
步驟一:擷取鏡像倉庫的登入名稱
如果您使用的是阿里雲帳號,阿里雲帳號就是您的鏡像倉庫登入名稱。
如果您使用的是RAM使用者,去掉RAM使用者帳號aliyundoc.com後的名稱就是您的鏡像倉庫登入名稱。例如您的RAM使用者為28768383240243****@aliyundoc.com,則您的鏡像倉庫登入名稱為28768383240243****。
步驟二:設定鏡像倉庫登入密碼
若您是首次登入Container Registry控制台,您需要設定Registry登入密碼,以便鏡像的上傳和下載。
使用帳號登入,需要設定Registry登入密碼。
使用RAM角色登入,需要調用介面擷取臨時帳號密碼登入。具體操作,請參見GetAuthorizationToken - 擷取用於登入執行個體的臨時帳號和臨時密碼。
單擊設定Registry登入密碼。
說明如果您忘記設定的Registry登入密碼,您可以配置訪問憑證來重設密碼。
在設定Registry登入密碼對話方塊中輸入密碼和確認密碼,單擊確定。
步驟三:建立命名空間
您可以通過命名空間管理該命名空間下的倉庫集合,包括倉庫許可權和倉庫屬性。
在頂部功能表列,選擇所需地區。
在左側導覽列,選擇執行個體列表。
在執行個體列表頁面單擊個人版執行個體。
在個人版執行個體管理頁面選擇 。
在命名空間頁面單擊建立命名空間。
在建立命名空間對話方塊中設定命名空間名稱,單擊確定。
步驟四:建立鏡像倉庫
在左側導覽列,選擇執行個體列表。
在執行個體列表頁面單擊個人版執行個體。
在個人版執行個體管理頁面選擇 。
在鏡像倉庫單擊建立鏡像倉庫。
在倉庫資訊設定精靈中設定命名空間、倉庫名稱、倉庫類型、摘要、描述資訊,單擊下一步。
說明倉庫名稱長度為2~64個字元,由小寫英文字母、數字、底線(_)、短劃線(-)、半形句號(.)組成,且底線不能在首位或末位,不支援正斜線(/)。
在代碼源設定精靈中設定代碼源、構建設定、構建規則設定,單擊建立鏡像倉庫。
參數
說明
代碼源
選擇代碼源。
重要選擇代碼源前,請務必繫結來源代碼平台。具體操作,請參見繫結來源代碼託管平台。
構建設定
代碼變更自動構建鏡像:當分支有代碼提交後會自動觸發構建規則。
海外機器構建:構建時會在海外機房構建,構建成功後推送到指定地區。
不使用緩衝:每次構建時會強制重新拉取基礎依賴鏡像,可能會增加構建時間。
構建規則設定
請在倉庫建立完成後,前往構建版面設定。具體操作,請參見構建倉庫與鏡像。
步驟五:推送拉取鏡像
為持續提升使用者體驗和最佳化資源管理,Container Registry對個人版執行個體的建立流程進行了調整。同時,新個人版執行個體的訪問網域名稱也進行了更改,詳細資料請參見新個人版執行個體使用限制。您可以根據實際情況選擇不同的推送和拉取鏡像方式。
新版個人版執行個體
執行以下命令,登入鏡像倉庫。
docker login --username=<鏡像倉庫登入名稱> crpi-xxxx.cn-<個人版執行個體所在的地區>.personal.cr.aliyuncs.com
返回結果中輸入步驟二:設定鏡像倉庫登入密碼設定的密碼,然後顯示
login succeeded
,表示登入成功。推送鏡像。
執行以下命令,給鏡像打標籤。
docker tag <鏡像ID> crpi-xxxx.cn-<個人版執行個體所在地區>.personal.cr.aliyuncs.com/<命名空間名稱>/<鏡像倉庫名稱>:<鏡像版本號碼>
執行以下命令,推送鏡像至個人版執行個體。
docker push crpi-xxxx.cn-<個人版執行個體所在地區>.personal.cr.aliyuncs.com/<命名空間名稱>/<鏡像倉庫名稱>:<鏡像版本號碼>
在鏡像倉庫頁面單擊目標鏡像倉庫名稱,選擇鏡像版本,在鏡像版本頁面可以看到推送的鏡像,說明推送鏡像成功。
執行以下命令,拉取鏡像。
docker pull crpi-xxxx.cn-<個人版執行個體所在地區>.personal.cr.aliyuncs.com/<命名空間名稱>/<鏡像倉庫名稱>:<鏡像版本號碼>
執行
docker images
,在返回結果中可以看到拉取的鏡像,說明拉取鏡像成功。
舊版個人版執行個體
執行以下命令,登入鏡像倉庫。
docker login --username=<鏡像倉庫登入名稱> registry.cn-<個人版執行個體所在的地區>.aliyuncs.com
返回結果中輸入步驟二:設定鏡像倉庫登入密碼設定的密碼,然後顯示
login succeeded
,表示登入成功。推送鏡像。
執行以下命令,給鏡像打標籤。
docker tag <鏡像ID> registry.cn-<個人版執行個體所在地區>.aliyuncs.com/<命名空間名稱>/<鏡像倉庫名稱>:<鏡像版本號碼>
執行以下命令,推送鏡像至個人版執行個體。
docker push registry.cn-<個人版執行個體所在地區>.aliyuncs.com/<命名空間名稱>/<鏡像倉庫名稱>:<鏡像版本號碼>
在鏡像倉庫頁面單擊目標鏡像倉庫名稱,選擇鏡像版本,在鏡像版本頁面可以看到推送的鏡像,說明推送鏡像成功。
執行以下命令,拉取鏡像。
docker pull registry.cn-<個人版執行個體所在地區>.aliyuncs.com/<命名空間名稱>/<鏡像倉庫名稱>:<鏡像版本號碼>
執行
docker images
,在返回結果中可以看到拉取的鏡像,說明拉取鏡像成功。
相關操作
大量刪除鏡像版本
在頂部功能表列,選擇所需地區。
在左側導覽列,選擇執行個體列表。
在執行個體列表頁面單擊個人版執行個體。
在個人版執行個體管理頁面選擇 ,在右側頁面單擊目標倉庫的名稱。
在鏡像倉庫詳情頁面左側導覽列單擊鏡像版本。
在鏡像版本頁面選中版本左側的表徵圖,單擊大量刪除。
在確認對話方塊中選中確定刪除該版本的鏡像,單擊確定。