全自動化:先打好docker映像倉庫,然後在專案的maven配置中配置好倉庫的位址,在專案裡設定好Dockerfile文件,這樣可以直接在idea打包好後自動上傳到映像倉庫,然後到伺服器啟動這個映像就行了。
半自動化:半自動化又有兩種方案,一種是Dockerfile檔案放在專案裡面,一種是放在專案外面。
放在專案裡面:springboot pom.xml中設定maven插件支持,打包時會使用專案裡面的dockerfile,如果沒設定外掛支援會報錯找不到dockerfile檔
放在專案外面:springboot還是打包成普通的jar,然後把這個jar上傳到伺服器,同時在伺服器建立一個Dockerfile文件,執行docker build指令,把這個jar建構成一個docker映像,然後透過映像執行。
一般來說用半自動化比全自動化用的多,本文用的算是半自動化方式的第二種,總體來說有幾個步驟:
#寫一個controller
進行本地測試
點擊package將項目進行打包
#发布到网上时只会把jar包和Dockerfile发布上去 COPY *.jar /app.jar #地址映射 CMD ["--server.port=8080"] #对外暴露端口 EXPOSE 8080 #执行命令 ENTRYPOINT ["java","-jar","/app.jar"]4. 建置映像將jar包和Dockerfile檔案拿出來新建個資料夾放裡面,按住shift鍵開啟PowerShell
(注意:本人電腦上安裝的是Docker Desktop)
以上是如何把SpringBoot專案打包成Docker映像的詳細內容。更多資訊請關注PHP中文網其他相關文章!