您好,登錄后才能下訂單哦!
Docker 與 Kubernetes 中對(duì)應(yīng)的字段名稱(chēng)。
如果在容器配置中沒(méi)有設(shè)置 command 或者 args,那么將使用 Docker 鏡像自帶的命令及其入?yún)ⅰ?br/>如果在容器配置中只設(shè)置了 command 但是沒(méi)有設(shè)置 args,那么容器啟動(dòng)時(shí)只會(huì)執(zhí)行該命令,Docker 鏡像中自帶的命令及其入?yún)?huì)被忽略。
如果在容器配置中只設(shè)置了 args,那么 Docker 鏡像中自帶的命令會(huì)使用該新入?yún)⒆鳛槠鋱?zhí)行時(shí)的入?yún)ⅰ?br/>如果在容器配置中同時(shí)設(shè)置了 command 與 args,那么 Docker 鏡像中自帶的命令及其入?yún)?huì)被忽略。容器啟動(dòng)時(shí)只會(huì)執(zhí)行配置中設(shè)置的命令,并使用配置中設(shè)置的入?yún)⒆鳛槊畹娜雲(yún)ⅰ?/p>
下表涵蓋了各類(lèi)設(shè)置場(chǎng)景:
#第一個(gè)表示容器沒(méi)有定義任何的命令和參數(shù),使用默認(rèn)的鏡像命令和參數(shù)
#第二個(gè)表示容器只定義了命令,最后就使用容器的命令但是不帶參數(shù)
#第三個(gè)表示容器定義了參數(shù),最后使用鏡像的命令,容器的參數(shù)
#第四個(gè)表示容器定義了命令和參數(shù),最后就使用容器的命令和參數(shù)
apiVersion: v1
kind: Pod
metadata:
name: ng1
namespace: default
spec:
nodeName: cs25
containers:
- name: ng1
image: ng1
command: [ "/bin/sh","-c" ]
#運(yùn)行的命令
args: [ "echo '222'>/222.txt;sleep 30" ]
#命令的參數(shù)
imagePullPolicy: Never
#登錄進(jìn)去能看到在/ 目錄生成了一個(gè)222.txt 文件
apiVersion: v1
kind: Pod
metadata:
name: ng5
namespace: default
spec:
nodeName: cs25
containers:
- name: ng1
image: ng1
command: [ "/bin/sh","-c" ]
#運(yùn)行的命令
args: [ "echo '555'>/555.txt;sleep 30" ]
#命令的參數(shù)
imagePullPolicy: Never
#修改了args的參數(shù),里面生成的文件也不一樣了
apiVersion: v1
kind: Pod
metadata:
name: ng5
namespace: default
spec:
nodeName: cs25
containers:
- name: ng1
image: ng1
#自定義鏡像
command: [ "/bin/sh","-c"]
#運(yùn)行的命令
args: [ "echo '555'>/usr/share/nginx/html/index.html; /usr/sbin/nginx -g 'daemon off;'" ]
#先把"555" 傳遞給index文件,在在前臺(tái)啟動(dòng)nginx
imagePullPolicy: Never
#由于是自定義鏡像,網(wǎng)上沒(méi)有文件,設(shè)置只能使用本地鏡像
#注意這個(gè)運(yùn)行參數(shù)的最后一個(gè)一定是不能關(guān)閉的,因?yàn)閎ash腳本做為pid1如果退出了,docker就不會(huì)認(rèn)為該pod已經(jīng)無(wú)法正常工作了會(huì)執(zhí)行重啟策略。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。