從頭搭建一個本身的docker(centos7,jdk1.8,tomcat8)容器

假設你已經安裝了docker!java

  1. 下載centos最新版鏡像到本地。docker pull centos:7web

  2. 進入鏡像的交互模式:docker run -i -t --name myweb centos:7 /bin/bashdocker

  3. 在鏡像中安裝jdk:yum install java-1.8.0-openjdk.x86_64 -y,能夠使用java -version驗證apache

  4. 在鏡像中下載tomcat:wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.32/bin/apache-tomcat-8.5.32.tar.gz
    若是沒有wget,先使用yum install wget安裝一下centos

  5. 解壓tomcat: tar -xzvf apache-tomcat-8.5.32.tar.gztomcat

  6. 移動tomcat路徑:cd apache-tomcat-8.5.5,mv * /opt/tomcat/bash

  7. 編寫java web容器運行腳本,須要編寫一個運行腳本,當啓動容器時,運行該腳本,啓動 Tomcat,好比/root/run.sh做爲啓動文件,具體過程以下:app

    建立腳本:vi /root/run.sh
    編輯腳本,將如下內容寫進去後保存:
    source ~/.bashrc
    sh /opt/tomcat/bin/catalina.sh run
    爲運行腳本添加執行權限: chmod u+x /root/run.sh,退出容器。webapp

  8. 提交剛纔操做的容器爲新的鏡像:經過docker ps -a 來查詢全部的容器,提交:docker commit 69e8f5dcba1b mine/javaweb:1.0centos7

  9. 運行這個新的鏡像:docker run -d -p 58080:8080 --name smart mine/javaweb:0.1 /root/run.sh

  10. tomcat啓動成功,訪問http://192.168.1.100:58080/ 既能夠看到tomcat啓動頁面。

  11. 以掛載的方式啓動web應用:docker run -d -v /root/webapp/shift.war:/opt/tomcat/webapps/shift.war --privileged=true -p 58080:8080 zhangda/centos7_jdk1.8_tomcat8 /root/run.sh (--privileged=true解決權限問題)

進入容器對話: docker exec -it b36b9710b164 /bin/bash

相關文章
相關標籤/搜索