在SpringBoot中使用Docker(利用dockerfile-maven-plugin插件)
周末在家做了一個實驗:
- 將Docker通過插件的方式集成到SpringBoot中
- 然后通過Maven命令根據項目中的Dockerfile自動生成Docker鏡像,同時將鏡像推送到遠程Linux服務器(遠程服務器已經提前裝好了Docker)
- 然后在服務器通過啟動Docker來啟動SpringBoot項目,并訪問接口。
第一步:將Docker通過插件的方式集成到SpringBoot中
項目結構


同時,需要給這個插件開通權限(否則會碰到refuse、0.0.0.0等問題),在Maven的pluginGroups節點,加上如下內容:

Dockerfile內容:

開通服務器的DockerAPI,以便我可以從本機將鏡像推送到服務器去。


將服務器和DockerAPI的地址配置到環境變量中:

第二步:然后通過Maven命令根據項目中的Dockerfile自動生成Docker鏡像并推送到Linux服務器

另外,注意,我的項目中碰到了找不到main-class的問題,所以,我在這里指定了main-class.

上面就我是我們上傳的鏡像。
我在這中間碰以了invalid or corrupt jarfile的錯誤,網上說是改MATA-INFO里面的文件,但我的問題不是這樣,我是Dockerfile中間的內容寫錯了,每個人碰到的問題都不一樣,所以,別人的場景未必適合你,需要進行斟酌。
第三步:然后在服務器通過啟動Docker來啟動SpringBoot項目,并訪問接口。

以下是在Linux本機訪問(有時無法訪問的會出現另外一些問題,比如防火墻未關閉等,這個可以參看網上的文章)。

遠程訪問。


浙公網安備 33010602011771號