亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

Docker中CMD和ENTRYPOINT的區別是什么

小億
108
2023-08-03 10:48:30
欄目: 編程語言

在Docker中,CMD和ENTRYPOINT是兩種不同的指令,用于指定在容器啟動時要執行的命令。

CMD指令用于為容器指定默認的執行命令。它可以有多種不同的格式:

  • CMD [“executable”,“param1”,“param2”]:以JSON數組的形式指定要執行的命令及其參數。這種格式中,CMD會被解析為一個單獨的命令,如果用戶指定了其他的命令,將會覆蓋CMD。

  • CMD command param1 param2:以默認的shell格式指定要執行的命令。這種格式下,CMD會被解析為一個命令行,如果用戶指定了其他的命令,將會覆蓋CMD。

ENTRYPOINT指令用于將容器作為可執行程序運行。它也可以有多種不同的格式:

  • ENTRYPOINT [“executable”, “param1”, “param2”]:以JSON數組的形式指定要作為可執行程序運行的命令及其參數。這種格式下,ENTRYPOINT會被解析為一個單獨的命令,如果用戶指定了其他的命令,將會覆蓋ENTRYPOINT。

  • ENTRYPOINT command param1 param2:以默認的shell格式指定要作為可執行程序運行的命令。這種格式下,ENTRYPOINT會被解析為一個命令行,如果用戶指定了其他的命令,將會覆蓋ENTRYPOINT。

區別:

  • CMD是為了提供默認值,如果用戶在運行容器時指定了其他的命令,則會覆蓋CMD。而ENTRYPOINT是要將容器作為可執行程序運行,用戶無法覆蓋ENTRYPOINT。

  • 如果在Dockerfile中同時使用了CMD和ENTRYPOINT,CMD的內容會作為ENTRYPOINT的參數。即CMD指定的命令及參數會被添加到ENTRYPOINT指定的命令之后。

總結:CMD用于指定默認的執行命令,而ENTRYPOINT用于將容器作為可執行程序運行,并且可以與CMD結合使用。

0
汉川市| 辽源市| 广南县| 磴口县| 宜黄县| 临泉县| 西藏| 阿拉尔市| 融水| 林芝县| 洛扎县| 桐乡市| 谢通门县| 昂仁县| 杭锦后旗| 崇文区| 东山县| 民丰县| 宿松县| 乃东县| 保定市| 玉环县| 上思县| 江川县| 和田县| 历史| 同仁县| 建湖县| 铜鼓县| 襄樊市| 广德县| 桐庐县| 建德市| 顺义区| 囊谦县| 江孜县| 新乡市| 和平区| 那曲县| 怀集县| 拜泉县|