Java專案Docker化改造(一)

當風愛上雨發表於2020-10-01

前置步驟

1、瞭解Docker的用途,最好了解一些容器化編排技術(K8S
2、Linux或Windows上安裝Docker
3、一個專案的jar/war包

jar包方式構建

建立Dockerfile檔案

Centos上直接 vi Dockerfile windows上建立檔案注意不要帶擴充名

FROM registry.cn-beijing.aliyuncs.com/tools-images/docker-jdk:v1
WORKDIR /application
COPY ROOT.jar paas-application.jar
#ADD config/* /application/config
#RUN chown -R /application
CMD java -jar /application/application.jar

將準備好的jar包和Dockerfile檔案放在同一目錄下

Java專案的配置檔案也可以使用外部的

檔案目錄如下

執行docker build命令

注意後面有個 . 代表取當前目錄下的Dockerfile檔案(也可以用./ 代替)

docker build -t root-application:v1 .

執行結果

執行docker images 命令可以檢視到該映象
執行結果

ps:如果映象比較多還是使用在Dockerfile裡面新增LABEL比較方便

war包方式構建

FROM registry.cn-beijing.aliyuncs.com/tools-images/docker-img:tomcat-v1.0
RUN rm -rf /usr/local/tomcat8.0.39/webapps/*
COPY ROOT.war /usr/local/tomcat8.0.39/webapps/ROOT.war
CMD ["catalina.sh", "run"]

省略多餘內容……

同樣是將war包和Dockerfile檔案放在同一放在同一目錄下,執行docker build 命令構建docker映象

總結

        一個專案的docker映象可分為三層,自底向上依次是:系統層、執行環境層、應用服務層,當下流行的devops也是通過gitLab-runner執行自動化CI/CD構建,再結合K8S將專案部署在K8S叢集中;當然這還需要編寫 .gitlab-ci.yml 以及 charts 相關的一些檔案。

相關文章