使用容器引擎客戶端上傳鏡像
入門指引
容器鏡像服務(wù)是一種支持容器鏡像全生命周期管理的服務(wù),提供簡單易用、安全可靠的鏡像管理功能,幫助用戶快速部署容器化服務(wù)。本文檔以一個(gè)2048應(yīng)用為例,幫助您學(xué)習(xí)如何安裝容器引擎并構(gòu)建鏡像,以及如何使用容器引擎客戶端上傳鏡像到容器鏡像倉庫。
說明:上傳鏡像僅適用于管理控制臺(tái)操作,暫時(shí)沒有開放鏡像上傳的API
您將按以下流程學(xué)習(xí)如何使用容器鏡像服務(wù)。
圖1 入門流程

準(zhǔn)備工作
在使用容器鏡像服務(wù)前,您需要完成注冊華為云的準(zhǔn)備工作。
如果您還沒有華為云帳號(hào),請參考以下步驟創(chuàng)建。
1.打開http://m.cqfng.cn/,單擊“注冊”。
2.根據(jù)提示信息完成注冊,詳細(xì)操作請參見如何注冊華為云管理控制臺(tái)的用戶?。注冊成功后,系統(tǒng)會(huì)自動(dòng)跳轉(zhuǎn)至您的個(gè)人信息界面。
一、安裝容器引擎
首先,您需要準(zhǔn)備一臺(tái)虛擬機(jī)并安裝容器引擎,請確保容器引擎為1.11.2及以上版本。
1.參考購買并登錄Linux彈性云服務(wù)器創(chuàng)建一臺(tái)帶有彈性公網(wǎng)IP的Linux彈性云服務(wù)器。
作為演示,彈性云服務(wù)器和公網(wǎng)IP的規(guī)格不需要太高,例如彈性云服務(wù)器的規(guī)格為“1vCPUs | 2GB”、公網(wǎng)IP帶寬為“1 Mbit/s”即可,操作系統(tǒng)以選擇“CentOS 7.5”為例。
說明:
●您也可以使用其他機(jī)器安裝容器引擎,不創(chuàng)建彈性云服務(wù)器。
●如果您使用的操作系統(tǒng)為EulerOS,請參考EulerOS操作系統(tǒng)下安裝。
●如果您使用的是Centos操作系統(tǒng),建議選擇CentOS7、CentOS7.2、CentOS7.3、CentOS7.4、CentOS7.5、CentOS7.6操作系統(tǒng)版本,否則可能導(dǎo)致安裝異常。
2.創(chuàng)建完成后返回彈性云服務(wù)器列表,單擊操作列的“遠(yuǎn)程登錄”,以root用戶登錄彈性云服務(wù)器。
3.使用如下命令快速安裝容器引擎。
二、構(gòu)建鏡像
1.在安裝容器引擎的虛擬機(jī)上執(zhí)行以下命令,下載2048應(yīng)用的源碼。
git clone https://gitee.com/jorgensen/2048.git
說明:若提示“git: command not found”表示未安裝Git工具,請先安裝該工具(可使用yum install git命令)。
2.下載成功后,進(jìn)入“2048”目錄。
cd 2048
3.修改Dockerfile文件。
vim Dockerfile
●FROM:指定基礎(chǔ)鏡像nginx。
●COPY:將2048源碼拷貝到容器內(nèi)的“/usr/share/nginx/html”目錄。
●EXPOSE:暴露容器的80端口。
●CMD:指定容器運(yùn)行時(shí)的默認(rèn)命令。
按“Esc”,輸入:wq,保存并退出。
4.使用docker build命令構(gòu)建鏡像。
docker build -t 2048 .
其中,
●-t表示給鏡像加一個(gè)標(biāo)簽,也就是給鏡像取名,這里鏡像名為2048。
●. 表示上下文路徑,鏡像構(gòu)建命令將該路徑下的所有內(nèi)容打包給容器引擎幫助構(gòu)建鏡像。
5.執(zhí)行以下命令,查看已成功構(gòu)建的2048鏡像,版本為默認(rèn)的latest。
docker images
您還可以看到一個(gè)nginx鏡像,這個(gè)鏡像是從鏡像倉庫下載下來,作為2048鏡像的基礎(chǔ)鏡像使用的。
6.(可選)運(yùn)行容器鏡像。
鏡像構(gòu)建成功后,您可以執(zhí)行docker run命令運(yùn)行容器鏡像。
docker run -p 8080:80 2048
docker run命令會(huì)啟動(dòng)一個(gè)容器,命令中-p是將虛擬機(jī)的8080端口映射到容器的80端口,即虛擬機(jī)的8080端口的流量會(huì)映射到容器的80端口,當(dāng)您在本地機(jī)器的瀏覽器訪問“https://ECS的彈性公網(wǎng)IP:8080”時(shí),就會(huì)訪問到容器中,此時(shí)瀏覽器返回的內(nèi)容就是2048應(yīng)用頁面。
三、創(chuàng)建組織
組織用于隔離鏡像,并為帳號(hào)下的IAM用戶指定不同的權(quán)限(讀取、編輯、管理)。
1.登錄SWR管理控制臺(tái)。
2.選擇左側(cè)導(dǎo)航欄的“組織管理”,單擊頁面右上角的“創(chuàng)建組織”。
3.填寫組織名稱,單擊“確定”。
圖2 創(chuàng)建組織

四、連接容器鏡像服務(wù)
1.登錄SWR管理控制臺(tái)。
2.選擇左側(cè)導(dǎo)航欄的“總覽”,單擊頁面右上角的“登錄指令”,在彈出的頁面中單擊復(fù)制登錄指令。
圖3 登錄指令

說明:此處生成的登錄指令有效期為24小時(shí),若需要長期有效的登錄指令,請參考獲取長期有效登錄指令。
3.在安裝容器引擎的虛擬機(jī)中執(zhí)行上一步復(fù)制的登錄指令。
登錄成功會(huì)顯示“Login Succeeded”。
五、上傳鏡像
1.在安裝容器引擎的虛擬機(jī)上執(zhí)行以下命令,為2048鏡像打標(biāo)簽。
docker tag [鏡像名稱1:版本名稱1] [鏡像倉庫地址]/[組織名稱]/[鏡像名稱2:版本名稱2]
其中,
[鏡像名稱1:版本名稱1]:請?zhí)鎿Q為您所要上傳的實(shí)際鏡像的名稱和版本名稱。
[鏡像倉庫地址]:可在SWR控制臺(tái)上查詢,四、連接容器鏡像服務(wù)中登錄指令末尾的域名即為鏡像倉庫地址。
[組織名稱]:請?zhí)鎿Q為三、創(chuàng)建組織中創(chuàng)建的組織。
[鏡像名稱2:版本名稱2]:請?zhí)鎿Q為您期待的鏡像名稱和鏡像版本。
示例:
docker tag 2048:latest swr.cn-north-4.myhuaweicloud.com/cloud-develop/2048:v1
2.上傳鏡像至鏡像倉庫。
docker push [鏡像倉庫地址]/[組織名稱]/[鏡像名稱2:版本名稱2]
示例:
docker push swr.cn-north-4.myhuaweicloud.com/cloud-develop/2048:v1
終端顯示如下信息,表明上傳鏡像成功。
返回SWR管理控制臺(tái),在“我的鏡像”頁面,執(zhí)行刷新操作后可查看到對應(yīng)的鏡像信息。
3.鏡像上傳成功后,你可以使用已上傳的鏡像在云容器引擎中部署工作負(fù)載。
容器鏡像服務(wù)SWR視頻幫助
容器鏡像服務(wù)介紹
02:15
鏡像同步
04:43