Docker將SpringBoot打成的jar包在docker環境中打包成鏡像


1.我的場景

  我開發了一個自己的博客項目,發現每次上傳jar包執行java -jar 這個命令啟動這個項目很麻煩,我又不想寫腳本;我的數據庫什么的等其他環境都是使用docker來安裝的,發現 docker安裝 我需要的開發環境真的很方便,都是別人做好的鏡像,直接pull拉下來就好;然后啟動鏡像的時候做好端口映射以及安裝目錄的映射就好了,后面啟動鏡像很方便只需要docker start +容器id就好了,好了不多說,我們現在就開始打包spingboot項目吧。 

2.打包springboot項目

執行mvn package 命令,將項目使用maven打成jar包如下圖:

3.DockerFile配置內容

FROM java:8-alpine
ADD my-blog-4.0.0-SNAPSHOT.jar app.jar
EXPOSE 28083
ENTRYPOINT ["java","-jar","/app.jar"]

第一行 需要java8環境的支持
第二行 my-blog-4.0.0-SNAPSHOT.jar為你SpringBoot打包最終的成包名稱,別名為app.jar
第三行 容器對外映射的端口
第四行,ENTRYPOINT 執行項目 app.jar

4.將前面第二步打好的jar包和第三步編輯好的DockerFile文件上傳至服務器(需在同一目錄下)

這邊筆者的docker不是裝在本機的,所以需要將這兩個文件上傳至服務器,如果你在本機有docker環境那么只需要放在一個目錄下直接構建就可以了呢。

5.構建docker鏡像

在存放jar包和DockerFile的目錄下執行下面的命令,注意后面 有個小點不能少

docker build -t my-blog .

運行成功后如下圖:

 

看到上圖 后就說明您的springboot項目打包成 docker鏡像成功了,這個時候執行下面的命令可以查看你的 鏡像:

docker images

看到這個的 時候,就說明我們的springboot jar包已經掛載了,下面就可以開始運行你的容器了:

6.啟動容器

docker run -d -p 28083:28083 my-blog

-p這個屬性我這邊詳細說一下: 28083:28083的意思是將我宿主機的28083端口映射到容易端口28083,我在前面已經配置過這個端口了

看到如下返回一串id就代表容器啟動成功啦

 


免責聲明!

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



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