码迷,mamicode.com
首页 > 编程语言 > 详细

spring boot项目生成docker镜像并完成容器部署

时间:2020-12-14 13:30:55      阅读:4      评论:0      收藏:0      [点我收藏+]

标签:自定义   查看   ima   build   run   生成   backend   adl   现在   

把spring boot项目生成的jar打成docker镜像并生成docker容器完成部署是比较简单方便的部署方式,而且部署过程很少会出错。

部署步骤

1.利用maven或者gradle完成打包工作,打成jar包的形式。

2.在项目中的任意位置创建Dockerfile文件,本人的文件如下:

FROM java:8
VOLUME /tmp/backend
ADD gams2_house.war-1.0.0-SNAPSHOT.war gams2_house.war
RUN bash -c ‘touch /gams2_house.war‘
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/gams_house.war"]

FROM java:8      是指含有jdk1.8的镜像

VOLUE /tmp   目录并持久化到Docker数据文件夹,因为Spring Boot使用的内嵌Tomcat容器默认使用/tmp/backend 作为工作目录

ADD gams2_house.war-1.0.0-SNAPSHOT.war gams2_house.war      添加自己的项目到到front.jar中,注意:这里的包名要和pom文件中的包名一致。

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/gams_house.war"]        ENTRYPOINT是指容器运行后默认执行的命令。

3.上传自己的项目和Dockerfile文件到虚拟机,可以放在同一个目录下面

技术图片

4.创建自己的镜像

 docker build -t gams2_house:1.0-SNAPSHOT .   注意后面是有个点!

技术图片

技术图片

 

 显示创建成功,查看下镜像。

 技术图片 

现在镜像就创建成功了。

5.生成docker容器

 docker run -d -p 8080:8080 --name gams2_house gams2_house:1.0-SNAPSHOT

-d:后台运行容器

-p 8080:8080 宿主机的端口和docker容器中的端口做映射

gams2_house 自定义的容器名称

gams2_house:1.0-SNAPSHOT镜像名称和对应版本,如果没有指定版本,默认会去寻找lastest版本。

技术图片

 

 生成了容器的id,docker ps -a查看是否存在gams2_house容器。

技术图片

portainer也能看到生成了相应的容器

技术图片

 

 生成了容器,接下来启动就可以了。

 

spring boot项目生成docker镜像并完成容器部署

标签:自定义   查看   ima   build   run   生成   backend   adl   现在   

原文地址:https://www.cnblogs.com/xiangpeng/p/14102816.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!