CMD
指定容器默認執行的命令
# exec 形式,推薦
CMD ["executable","param1","param2"]
CMD ["可執行命令", "參數1", "參數2"...]# 作為ENTRYPOINT的默認參數
CMD ["param1","param2"]# shell
CMD 命令 param1 param2
重點
- 一個 Dockerfile 只有一個 CMD 指令,若有多個,只有最后一個 CMD 指令生效
- CMD 主要目的:為容器提供默認執行的命令,這個默認值可以包含可執行文件
- 也可以不包含可執行文件,意味著必須指定 ENTRYPOINT 指令(第二種寫法)
exec 模式下使用環境變量
# 錯誤寫法,不會使用 HOME 環境變量
CMD [ "echo", "$HOME" ]# 正確寫法,需要將 echo 和使用環境變量放一起
CMD [ "sh", "-c", "echo $HOME" ]
RUN 和 CMD
- RUN 可以在構建階段運行很多個命令,而且每運行一個命令都會單獨提交結果
- CMD 在構建階段不執行任何操作,而是指定鏡像默認執行的命令
最后感謝每一個認真閱讀我文章的人,禮尚往來總是要有的,這些資料,對于【軟件測試】的朋友來說應該是最全面最完整的備戰倉庫,雖然不是什么很值錢的東西,如果你用得到的話可以直接拿走:
這些資料,對于【軟件測試】的朋友來說應該是最全面最完整的備戰倉庫,這個倉庫也陪伴上萬個測試工程師們走過最艱難的路程,希望也能幫助到你!?