1 新建一个 springboot 项目,并将其打包成 jar 文件。生成demo1.jar 文件
请参考 使用springBoot搭建REATFul风格的web demo
2 编写 dockerfile 文件
FROM openjdk:8-jre-alpine VOLUME /tmp COPY demo1.jar /usr/src/
WORKDIR /usr/src CMD ["java","-jar","demo1.jar"] EXPOSE 8080
说明:
FROM java:8:指Docker Hub上官方提供的java镜像,有了这个基础镜像后,Dockerfile可以通过FROM
指令直接获取它的状态——也就是在容器中java
是已经安装的,接下来通过自定义的命令来运行Spring Boot应用。
VOLUME /tmp:创建/tmp目录并持久化到Docker数据文件夹,因为Spring Boot使用的内嵌Tomcat容器默认使用/tmp
作为工作目录。使容器中的一个目录具有持久化存储数据的功能,该目录可以被容器本身使用,也可以共享给其他容器。当容器中的应用有持久化数据的需求时可以在Dockerfile中使用该指令。
ADD demo1.jar app.jar:将应用jar包复制到/app.jar
ENTRYPOINT:表示容器运行后默认执行的命令,可以多次设置,但是只有最后一个有效。
构建镜像
docker build . -t demo1:1.0.0-SNAPSHOT
后续构建镜像、运行容器过程请参考使用 dockerfile 创建镜像