CMD
類似於 RUN 指令,用於運行程序,但二者運行的時間點不同:
- CMD 在docker run 時運行。
- RUN 是在 docker build。
作用:為啟動的容器指定默認要運行的程序,程序運行結束,容器也就結束。CMD 指令指定的程序可被 docker run 命令行參數中指定要運行的程序所覆蓋。
注意:如果 Dockerfile 中如果存在多個 CMD 指令,僅最后一個生效。
格式:
CMD <shell 命令> 例如: CMD shart.sh start CMD ["<可執行文件或命令>","<param1>","<param2>",...] CMD ["<param1>","<param2>",...] # 該寫法是為 ENTRYPOINT 指令指定的程序提供默認參數
推薦使用第二種格式,執行過程比較明確。第一種格式實際上在運行的過程中也會自動轉換成第二種格式運行,並且默認可執行文件是 sh。