Docker CMD exec-form用於多個命令執行


這是一個通過shell形式的CMD指令運行多個命令的愚蠢示例.我更喜歡使用exec-form,但我不知道如何連接指令.

殼的形式:

  1. CMD mkdir -p ~/my/new/directory/ \
  2. && cd ~/my/new/directory \
  3. && touch new.file

EXEC形式:

  1. CMD ["mkdir","-p","~/my/new/directory/"]
  2. # What goes here?

有人可以在exec-form中提供等效的語法嗎?

最佳答案
簡短的回答是,你不能在exec表單中鏈接命令.

&安培;&安培;是shell的一個函數,用於將命令鏈接在一起.實際上,當您在Dockerfile中使用此語法時,實際上是在利用shell功能.

如果你想使用exec表單有多個命令,那么你已經使用exec表單來調用shell,如下所示……

  1. CMD ["sh","-c","mkdir -p ~/my/new/directory/ && cd ~/my/new/directory && touch new.file"]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM