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