我需要配置在Docker容器中運行的程序。爲了實現該程序必須正在運行(並提供一個開放端口),以便管理程序可以連接到正在運行的進程。不幸的是,沒有簡單的可編輯配置文件,所以這是唯一的方法。 RUN命令顯然不是正確的,因爲在docker轉到下一個命令後它不會提供正在運行的實例。最好的方法是在建造碼頭圖像的時候這樣做,但如果它必須在容器啓動時完成,那麼也可以。但是(據我所知)也沒有簡單的方法可以在啓動時運行多個命令。有沒有人有一個想法如何做到這一點?Docker:在另一個命令運行時運行命令
爲了讓更多的明確的,這裏是從我Dockerfile一個簡單的例子:
# this command should start the application which has to be configured
RUN /usr/local/server/server.sh
# I tried this command alternatively because the shell script is blocking
RUN nohup /usr/local/server/server.sh &
# this is the command which starts an administration program which connects to the running instance started above
RUN /usr/local/administration/adm [some configuration parameters...]
# afterwards the server process can be stopped
下載包含正確的狀態可能是一個解決方案的完整程序目錄,太。但是,在Dockerfile中配置不能輕易改變,那將會很棒。
謝謝,我現在寫了一個shell腳本並運行它,因爲它只有一個命令。這似乎工作 – UoS