国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Web服務器 > 正文

Docker容器內(nèi)應用服務自啟動的方法示例

2024-09-01 13:55:36
字體:
供稿:網(wǎng)友

如果想把Docker容器內(nèi)的應用服務隨著容器開啟時自啟動。只需要將服務啟動的腳本寫在Dockerfile里,然后用Dockerfile重構(gòu)鏡像即可實現(xiàn):

  • 編寫應用服務自啟動腳本
  • 編寫Dockerfile
  • 重構(gòu)鏡像
  • 開啟容器

編寫服務自啟動腳本(dockerd)
(tomcat為例)

#!/bin/bash## ## chkconfig: 345 98 30# description: tomcat program.# processname: tomcat# Source function library.. /etc/rc.d/init.d/functions# Source networking configuration.#. /etc/sysconfig/networkprog="tomcat"checkprocess(){  chkret=`ps -ef |grep $prog |grep -v "grep" |wc -l`    return $chkret}start(){    cd /usr/local/tomcat/bin/   ./startup.sh  echo "Service $prog started!"}#/usr/sbin/nscd &/usr/sbin/sshd -D &while [ true ]do        DNSIP=172.18.3.179          ping=`ping -c 3 $DNSIP|awk 'NR==7 {print $4}'`        if [[ $ping -eq "3" ]]        then            break        fi    sleep 3donewhile [ true ]do    checkprocess     if [[ $chkret -eq "0" ]]        then              start     #nscd -i hosts        else           echo "Service $prog is running."        fi    sleep 60doneexit 0

編寫Dockerfile

FROM tomcatMAINTAINER liu "350142639@qq.com"ADD dockerd /etc/rc.d/init.d/RUN chmod 777 /etc/rc.d/init.d/dockerdENV JAVA_HOME /usr/local/jdk1.6.0_30ENV PATH   $JAVA_HOME/bin:$PATHENV CLASSPATH  .:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarCMD /etc/rc.d/init.d/dockerd

其中,ADD將同級目錄下的腳本加入鏡像的指定位置,ENV設置java的環(huán)境變量(很重要,不寫這句自啟動腳本無法執(zhí)行成功)CMD命令只能有一個,用來在容器啟動時,執(zhí)行命令。也可以是腳本。

重構(gòu)鏡像
**通過 
docker build -t 新的鏡像名 . 
成功制作新的鏡像

開啟容器

docker run -d -h=”s” –name=”s” 新的鏡像名

然后,發(fā)現(xiàn)tomcat已經(jīng)開啟

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到服務器教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 福贡县| 闵行区| 高台县| 莱西市| 平果县| 鄂托克旗| 扶风县| 定襄县| 娱乐| 汾阳市| 枝江市| 上杭县| 安新县| 河曲县| 铁岭市| 乐清市| 海伦市| 永登县| 毕节市| 望江县| 军事| 辽阳县| 兰溪市| 宁远县| 怀柔区| 周宁县| 绍兴县| 靖西县| 涪陵区| 盐津县| 新密市| 砀山县| 油尖旺区| 赤城县| 双桥区| 沾化县| 威远县| 博乐市| 尼勒克县| 武强县| 平定县|