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

 

一、问题产生   

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

二、部署步骤

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

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

FROM java:8
VOLUME /tmp
ADD front-1.0-SNAPSHOT.jar front.jar
RUN bash -c 'touch /front.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/front.jar"]

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

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

ADD front-1.0-SNAPSHOT.jar front.jar

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

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/front.jar"]

ENTRYPOINT是指容器运行后默认执行的命令。

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

4.创建自己的镜像

docker build -t front:1.0-SNAPSHOT .

注意后面是有个点的。

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

现在镜像就创建成功了。

5.生成docker容器

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

-d:后台运行容器

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

front 自定义的容器名称

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

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

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

展开阅读全文

没有更多推荐了,返回首页