使用Docker運行war包Java應用

在之前的文章Docker部署Spring Boot中,應用編譯的結果是jar包,而在很多情況下J2EE應用的編譯結果是war包。本節(jié)將使用Docker部署war包Java應用。

一、構建tomcat的基礎鏡像

  1. 下載并上傳tomcat到linux服務器

    在這里我使用的tomcat版本是8.5.33,上傳后解壓文件并重命名:

    $ tar -zxvf apache-tomcat-8.5.33.tar.gz
    
    $ mv apache-tomcat-8.5.33  tomcat8.5
    
  2. 編寫Dockerfile

    #這里之前新建的jdk最小鏡像
    FROM simon/java8:1.0
    MAINTAINER simon
    #這個環(huán)境變量用來表名該鏡像模板的最后更新時間
    ENV REFRESHED_AT 2018-09-5
    
    #切換鏡像目錄,進入/usr目錄
    WORKDIR /usr
    #在/usr/下創(chuàng)建tomcat目錄,用來存放tomcat
    RUN mkdir tomcat
    
    #將宿主機的tomcat目錄下的文件拷至鏡像的/usr/tomcat目錄下
    ADD tomcat8.5 /usr/tomcat/
    
    #設置環(huán)境變量
    ENV CATALINA_HOME /usr/tomcat
    ENV PATH $CATALINA_HOME/bin:$PATH
    
    #公開端口
    EXPOSE 8080
    #設置啟動命令
    CMD ["/usr/tomcat/bin/catalina.sh","run"]
    

    這里使用的是我之前構建的jdk最小鏡像,這里不在贅述,具體查看構建最小jdk Docker鏡像這篇文章。

  3. 構建鏡像

    $ docker build -t simon/base-tomcat:1.0 .
    

    鏡像名稱為:simon/base-tomcat;鏡像TAG為:1.0

  4. 啟動容器

    $ docker run -d -p 8081:8080  simon/base-tomcat:1.0
    

    訪問地址為:http://ip:8081

二、構建war包鏡像

在這里我們需要將war包掛載到上面構建的tomcat鏡像的/usr/tomcat/webapps目錄下,并啟動tomcat。

  1. 編寫Dockerfile

    #這里之前新建的base-tomcat鏡像
    FROM simon/base-tomcat:1.0
    MAINTAINER simon
    #這個環(huán)境變量用來表名該鏡像模板的最后更新時間
    ENV REFRESHED_AT 2018-09-5
    
    #將宿主機當前目錄下的war包拷至鏡像的/usr/tomcat/webapps目錄下
    ADD cas /usr/tomcat/webapps
    
    #暴露端口
    EXPOSE 8080
    #設置啟動命令
    CMD ["/usr/tomcat/bin/catalina.sh","run"]
    

    基礎鏡像為上面構建的base-tomcat鏡像。

  2. 構建鏡像

    $ docker build -t simon/cas:1.0 .
    

    鏡像名稱為:simon/cas;鏡像TAG為:1.0

  3. 啟動容器

    $ docker run -d -p 8081:8080  simon/cas:1.0
    

    訪問路徑:http://ip:8081/cas

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容