docker啟動springboot項目容器閃退的解決
dockerfile腳本編寫
#dockerfile腳本 FROM java:8 COPY *.jar /app.jar EXPOSE 8080 ENTRYPOINT ["java","-jar","/app.jar"]
編寫好腳本后將腳本文件和maven打好的jar包放入同一目錄中
執(zhí)行構(gòu)建鏡像命令docker build -t docker-test .
- -t :為指定鏡像名稱
- .:為當(dāng)前目錄執(zhí)行
發(fā)現(xiàn)報錯,報錯原因是dockerfile腳本里不能用java8,要用openjdk8
從新構(gòu)建,構(gòu)建成功
啟動docker容器,命令docker run -d --name hello -p 8080:8080 hello
- -d:后臺運(yùn)行
- --name:指定容器名稱
- -p:向外暴露端口
啟動成功,查看一下容器運(yùn)行狀態(tài),發(fā)現(xiàn)容器閃退
Exited (1)代表不是正常退出,而是有錯誤導(dǎo)致退出,排查問題,用交互模式重啟容器
命令:docker start -ai hello
發(fā)現(xiàn)錯誤是編譯時的java版本與docker容器中的java版本不一致,編譯用的java17,docker中的是java8
修改dockerfile中的jdk版本,從新構(gòu)建鏡像并啟動容器,發(fā)現(xiàn)啟動成功
我們驗證一下是否可以成功訪問
可以成功訪問到,問題解決
到此這篇關(guān)于docker啟動springboot項目容器閃退的文章就介紹到這了,更多相關(guān)docker啟動springboot閃退內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
docker-compose.yml參數(shù)的用法(配置文件)
這篇文章主要介紹了docker-compose.yml參數(shù)的用法(配置文件),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-11-11docker映射端口穿透內(nèi)置防火墻的實現(xiàn)
在使用Docker部署項目時,即使未開啟CentOS7的Firewalld防火墻,端口仍可被外網(wǎng)訪問,這是因為Docker在安裝后會接管iptables,并自動添加規(guī)則以放行指定端口,解決方法包括依賴外置防火墻放行端口、指定端口監(jiān)聽地址為本機(jī)、禁用Docker的iptables規(guī)則修改2024-10-10解決docker鏡像(centos系統(tǒng))中無sudo命令問題
這篇文章主要介紹了解決docker鏡像(centos系統(tǒng))中無sudo命令問題,具有很好的參考價值,希望對大家有所幫助,2023-11-11pycharm與ssh遠(yuǎn)程訪問服務(wù)器docker的詳細(xì)教程
這篇文章主要介紹了pycharm與ssh遠(yuǎn)程訪問服務(wù)器docker,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10