欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

一步步教你把SpringBoot項目打包成Docker鏡像

 更新時間:2023年02月24日 10:41:44   作者:天天學爪娃  
Docker可以讓開發(fā)者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,然后發(fā)布到任何流行的 Linux 機器上,也可以實現(xiàn)虛擬化,下面這篇文章主要給大家介紹了關于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ù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • java實現(xiàn)Dijkstra最短路徑算法

    java實現(xiàn)Dijkstra最短路徑算法

    這篇文章主要為大家詳細介紹了java實現(xiàn)Dijkstra最短路徑算法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • Java多線程之Disruptor入門

    Java多線程之Disruptor入門

    這篇文章主要介紹了Java多線程之Disruptor入門,文中有非常詳細的代碼示例,對正在學習java多線程的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04
  • 深入理解Spring Boot的日志管理

    深入理解Spring Boot的日志管理

    這篇文章主要給大家深入的介紹了Spring Boot日志管理的相關資料,文中介紹的很詳細,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-02-02
  • JDK8?HashMap擴容算法demo

    JDK8?HashMap擴容算法demo

    這篇文章主要為大家介紹了JDK8?HashMap擴容算法demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • 深入理解java中for和foreach循環(huán)

    深入理解java中for和foreach循環(huán)

    下面小編就為大家?guī)硪黄钊肜斫鈐ava中for和foreach循環(huán)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-07-07
  • SpringBoot項目中連接SQL Server的三種方式

    SpringBoot項目中連接SQL Server的三種方式

    連接SQL Server是許多Spring Boot項目中常見的需求之一,本文主要介紹了SpringBoot項目中連接SQL Server的三種方式,具有一定的參考價值 ,感興趣的可以了解一下
    2023-09-09
  • 淺談java對象結(jié)構(gòu) 對象頭 Markword

    淺談java對象結(jié)構(gòu) 對象頭 Markword

    這篇文章主要介紹了淺談java對象結(jié)構(gòu) 對象頭 Markword,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • 一文帶你搞懂Java中的遞歸

    一文帶你搞懂Java中的遞歸

    這篇文章主要為大家詳細介紹了Java中的遞歸的實現(xiàn)以及應用,文中的示例代碼講解詳細,對我們學習Java有一定幫助,需要的可以參考一下
    2022-10-10
  • 深入理解Java中的裝箱和拆箱

    深入理解Java中的裝箱和拆箱

    這篇文章主要介紹了深入理解Java中的裝箱和拆箱,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-09-09
  • Seata AT模式如何實現(xiàn)行鎖詳解

    Seata AT模式如何實現(xiàn)行鎖詳解

    這篇文章主要為大家介紹了Seata AT模式如何實現(xiàn)行鎖詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11

最新評論