用(yong)戶(hu)需要(yao)(yao)編輯應用(yong)的(de)(de)yaml文(wen)件,修改鏡(jing)(jing)像(xiang)(xiang)(xiang)拉取(qu)策略字(zi)段imagePullPolicy為Always,保證每次創建應用(yong)都(dou)會拉取(qu)鏡(jing)(jing)像(xiang)(xiang)(xiang),而并不(bu)使用(yong)節點上已有(you)的(de)(de)鏡(jing)(jing)像(xiang)(xiang)(xiang),另外當容器(qi)鏡(jing)(jing)像(xiang)(xiang)(xiang)的(de)(de)tag不(bu)是latest時,用(yong)戶(hu)更新(xin)該(gai)容器(qi)鏡(jing)(jing)像(xiang)(xiang)(xiang)但沒(mei)有(you)更改鏡(jing)(jing)像(xiang)(xiang)(xiang)的(de)(de)tag,則使用(yong)該(gai)鏡(jing)(jing)像(xiang)(xiang)(xiang)創建應用(yong)時,就(jiu)不(bu)會重新(xin)拉取(qu)更新(xin)后的(de)(de)鏡(jing)(jing)像(xiang)(xiang)(xiang),需要(yao)(yao)您(nin)在(zai)更新(xin)鏡(jing)(jing)像(xiang)(xiang)(xiang)的(de)(de)同(tong)時更改鏡(jing)(jing)像(xiang)(xiang)(xiang)的(de)(de)版本tag。
配置(zhi)項若使用(yong)上傳文(wen)件(jian)功能設置(zhi)配置(zhi)項,目前支持json和yaml兩(liang)種(zhong)格式,且文(wen)件(jian)大小不得超過2MB。以下列舉(ju)了(le)json及(ji)yaml兩(liang)種(zhong)示例(li):
json格(ge)式:
{
"kind": "ConfigMap",
"apiVersion": "v1", "metadata": {
"name": "paas-broker-app-017", "namespace": "lcqtest", "enable": true
},
"data": { "context":
"{\"applicationComponent\":{\"properties\":{\"custom_spec\":{}},\"node_name\":\"paas-broker- app\",\"stack_id\":\"0177eae1-89d3-cb8a-1f94- c0feb7e91d7b\"},\"softwareComponents\":[{\"properties\":{\"custom_spec\":{}},\"node_name\":\"paas
-broker\",\"stack_id\":\"0177eae1-89d3-cb8a-1f94-c0feb7e91d7b\"}]}"
}
}
yaml格(ge)式(shi):
apiVersion: apps/v1beta2 # for versions before 1.8.0 use apps/v1beta1
kind: Deployment
metadata:
name: nginx-deployment-basic
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
# nodeSelector:
# env: test-team
containers:
- name: nginx
image: nginx:1.7.9 # replace it with your exactly <image_name:tags>
ports:
- containerPort: 80
可以通過(guo)申(shen)請(qing)彈(dan)性IP并將(jiang)彈(dan)性IP綁定到集(ji)群上。
點(dian)(dian)擊(ji)導航欄【資源(yuan)管理】->【集群(qun)管理】,進入集群(qun)列表->點(dian)(dian)擊(ji)集群(qun)名(ming)稱,進入集群(qun)詳情頁->點(dian)(dian)擊(ji)【API Server 公網IP】旁的綁定(ding),選(xuan)擇已有IP,完成綁定(ding)操作。
用戶也可以在創建集群的(de)步驟中選擇(ze)已有的(de)彈性IP進行綁定。
| 說明:彈性IP需要在控制臺【網絡】>【彈性公網IP】處申請,具體操作請見【購買彈性IP】。 |
目前支(zhi)持兩(liang)種部署方(fang)式,用戶可基于自(zi)身需求選(xuan)擇(ze):
通過(guo)天翼(yi)(yi)云(yun)官方鏡(jing)像:基于天翼(yi)(yi)云(yun)官方平臺上的鏡(jing)像創建容器應用,無需上傳私有鏡(jing)像。
上傳(chuan)并選擇私有(you)鏡(jing)像(xiang):您可基于業(ye)務(wu)需求制作私有(you) docker 鏡(jing)像(xiang),上傳(chuan)到容器鏡(jing)像(xiang)服務(wu)。基于該私有(you)鏡(jing)像(xiang)創(chuang)建容器應用。
用(yong)戶(hu)可以通(tong)(tong)過(guo)Dockerfile進行鏡像制作,用(yong)戶(hu)需(xu)(xu)要首先在本(ben)地安(an)裝Docker引擎,所(suo)有通(tong)(tong)過(guo)天翼(yi)云云容器引擎創建或添加的(de)節(jie)點(dian)(dian),系統都(dou)會自(zi)動為節(jie)點(dian)(dian)安(an)裝 1.11.2 版本(ben)的(de) Docker,用(yong)戶(hu)也可登陸節(jie)點(dian)(dian)機器進行鏡像制作,無需(xu)(xu)手(shou)動安(an)裝。若需(xu)(xu)要了解更多(duo) Docker基礎知識,請參閱//docs.docker.com/。
本節以Nginx鏡(jing)像為(wei)(wei)例,修(xiu)改(gai)官方(fang)Nginx鏡(jing)像的(de)歡迎頁面(mian),定制一(yi)個新的(de)鏡(jing)像,將歡迎頁面(mian)改(gai)為(wei)(wei)“Hello, CCE!”。具體的(de)操作步驟如下:
前(qian)往(wang)資源池(chi)控制臺,點(dian)擊【計算】>【彈(dan)性云(yun)主機(ji)】,獲取集群(qun)節點(dian)的用(yong)戶密碼(ma),使用(yong) root 用(yong)戶登錄 Docker 所在的云(yun)主機(ji)。用(yong)戶也可(ke)自(zi)行登陸到已安裝(zhuang)好Docker的本(ben)地環境上進行制作;
創建(jian)一(yi)個文(wen)件夾,用于存放鏡(jing)像,進入該文(wen)件夾,再通(tong)過touch命令創建(jian)一(yi)個名為 Dockerfile 的文(wen)件;
mkdir mynginx
cd mynginx
touch Dockerfile
使用vi命令編輯 Dockerfile;
vi Dockerfile
文件內(nei)容如下(xia):
FROM nginx
RUN echo '<h1>Hello,CCE!</h1>' > /usr/share/nginx/html/index.html
其中:
FROM 語句:表示使用nginx鏡像作為(wei)基礎;
RUN 語句:表示執行echo命令,在(zai)顯(xian)示器中顯(xian)示一段Hello,CCE的文(wen)字;
完成編寫后,使(shi)用wq!命令(ling)保存文(wen)件并退(tui)出。
構建 Docker 鏡像,使用(yong)docker build 構建鏡像;
docker build -t nginx:v3 .
其中:
-t 為(wei)鏡像命名(ming)
. 代表本次執(zhi)行(xing)的上下(xia)文路徑
查看鏡像。
執行以下命令,查看制作(zuo)好(hao)的Docker鏡像:
docker images