Docker部署運行springboot項目,並使用Dockerfile制作鏡像


前言:

  本來是要搭建一個自動化部署分布式項目的服務器平台的,使用jenkins+k8s+ELK+springboot把一個簡單的springboot項目給搞起來,由於工程太大,先分開把每個技術組件單獨給擼一遍過去再說。全擼一遍過去后,再來整合搭建這個浩大的全方位服務器自動部署工程。

 

  唉,先用Docker發布一個springboot鏡像demo練練手吧。

 

  借鑒博客:https://www.imooc.com/article/44582

  借鑒博客(此博客有連接數據庫):https://segmentfault.com/a/1190000013096870

  

 

准備環境:

  【注意:搞這些東西的時候一定要關閉服務器的防火牆】

  CentOS7服務器一台:192.168.26.233    (服務器上安裝docker就不多說了)

  springboot項目的demo一個:thymeleaf-master  (以前用來測試thymeleaf技術的一個小demo項目,正好拿來用)

 

第一步:准備測試的springboot項目:thymeleaf-master

  1、thymeleaf-master項目的指定啟動端口為:8082

  2、thymeleaf-master項目本地啟動后的頁面:

 

   3、把此項目打成jar包,操作如下圖:

 

 

 

 第二步:docker把jar包構建成鏡像:

    1、把上面打好的jar包,上傳到CentOS服務器上,我在服務器上新建了目錄/usr/local/dev/docker/testProject/,把jar包丟到testProject目錄里,再建一個Dockerfile文件,此文件是來用構建鏡像的配置,如下圖:

  

 

     2、Dockerfile配置文件的內容:

FROM java:8
VOLUME /tmp
ADD thymeleaf-master-1.0-SNAPSHOT.jar /thymeleaf-master.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/thymeleaf-master.jar"]

 

 

 

     3、執行docker構建鏡像命令:

#thymeleaf-master表示生成鏡像的名稱,(注意后面有個點.)
docker build -t thymeleaf-master .

 

 

 

     4、查看打成的鏡像是否存在:(可以看到有兩鏡像,已經成功了。docker.io/java估計是docker自動打成的jar包運行環境jdk8鏡像)

 

 

    5、運行剛才構建成的鏡像:

#這里我項目用的8082端口,這里我也映射8082端口,加上--name xxx是為了給容器取別名,方便docker命令操作
docker run -d -p 8082:8082 --name thymeleaf-master thymeleaf-master

 

 

    6、瀏覽器打開ip:8082端口,查看:

 

 

=============2019年11月10日更新==============================

項目變成容器運行在docker里,怎么查看項目日志:

容器日志命令查看:表示查看容器名為thymeleaf-master的500行日志

docker logs -f -t --tail 500 thymeleaf-master

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM