一步步教你把SpringBoot項目打包成Docker鏡像
把SpringBoot項目打包成Docker鏡像有兩種方案:
全自動化:先打好docker鏡像倉庫,然后在項目的maven配置中配置好倉庫的地址,在項目里配置好Dockerfile文件,這樣可以直接在idea中打包好后自動上傳到鏡像倉庫,然后去服務器上啟動這個鏡像就行了。
半自動化:半自動化又有兩種方案,一種是Dockerfile文件放在項目里面,一種是放在項目外面。
- 放在項目里面:springboot pom.xml中配置maven插件支持,打包時會使用項目里面的dockerfile,如果沒配置插件支持會報錯找不到dockerfile文件
- 放在項目外面:springboot還是打包成普通的jar,然后把這個jar上傳到服務器,同時在服務器創(chuàng)建一個Dockerfile文件,執(zhí)行docker build命令,把這個jar構(gòu)建成一個docker鏡像,然后通過鏡像執(zhí)行。
一般來說用半自動化比全自動化用的多,本文用的算是半自動化方式的第二種,總體來說有一下幾個步驟:
1. 構(gòu)建SpringBoot項目
編寫一個controller
進行本地測試
2. 打包應用
點擊package將項目進行打包
打包成功
cmd運行java -jar能夠運行成功
可以下載個Docker插件
3. 編寫dockerfile
在target里面創(chuàng)建Dockerfile文件,此時Dockerfile文件是高亮的
Dockerfile配置內(nèi)容(在Idea里面寫Dockerfile會有提示)
#發(fā)布到網(wǎng)上時只會把jar包和Dockerfile發(fā)布上去 COPY *.jar /app.jar #地址映射 CMD ["--server.port=8080"] #對外暴露端口 EXPOSE 8080 #執(zhí)行命令 ENTRYPOINT ["java","-jar","/app.jar"]
4. 構(gòu)建鏡像
將jar包和Dockerfile文件拿出來新建個文件夾放里面,按住shift鍵打開PowerShell
(注意:本人電腦上安裝的是Docker Desktop)
輸入命令構(gòu)建鏡像,firstdocker是鏡像名(最后的 . 表示 Dockerfile 文件在當前目錄下)
查看構(gòu)建好的鏡像(不清楚命令的可以先學一下基礎命令)
鏡像構(gòu)建成功后運行容器(第一個為服務器8080端口,第二個8080為docker容器端口)
可以看容器是否在運行和日志信息
訪問成功
5. 發(fā)布運行
可以將鏡像上傳到dockerhub,以后使用Docker之后,給別人交付的就是一個鏡像即可!
總結(jié)
到此這篇關于把SpringBoot項目打包成Docker鏡像的文章就介紹到這了,更多相關SpringBoot項目打包Docker鏡像內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
SpringBoot項目中連接SQL Server的三種方式
連接SQL Server是許多Spring Boot項目中常見的需求之一,本文主要介紹了SpringBoot項目中連接SQL Server的三種方式,具有一定的參考價值 ,感興趣的可以了解一下2023-09-09淺談java對象結(jié)構(gòu) 對象頭 Markword
這篇文章主要介紹了淺談java對象結(jié)構(gòu) 對象頭 Markword,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10