1. 程式人生 > >docker容器的多應用開機啟動

docker容器的多應用開機啟動

在普通的Ubuntu系統中,只需要將自己需要開機啟動的指令碼寫在 /etc/rc.local 中,即可實現開機自啟動。但是在docker中,則完全不是這樣,那麼應該如何實現開機啟動多個應用程式呢?預設地,docker中Ubuntu會啟動/bin/bash。

我設定rc.local後,具體內容如下,以供大家參考:

/etc/rc.local

/etc/init.d/ssh start
/root/wsdc_project/auto_start.sh


# set java class path
export JAVA_HOME=/root/wsdc_project/resources/jdk1.7.0
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:${PATH}

/bin/bash

exit 0

note1: 由於ssh不會自啟動,所以我把該命令寫在 rc.local 中;

note2: 我啟動應用的所有指令碼都放置在 /root/wsdc_project_auto_start.sh 中了

note3: 如果是通過docker進去容器的時候,不會自動載入/etc/profile,因此我在其中設定的java環境就得不到執行,因此我將export java環境的語句寫在了/etc/rc.local了。

note4: 一定需要注意的是,要將/bin/bash放置於最後,因為通過docker容器進去的時候,是要執行到/bin/bash,然後我們才可以進去,/bin/bash語句之後的只有當我們exit的時候,才會被執行到。