springboot项目打包成docker镜像


方法一:使用Dockerfile构建

  • 把项目打包成jar包,复制到服务器中

  • 在服务器中新建Dockerfile文件(Dockerfile和jar在同一路径下),Dockerfile示例

FROM java:8
EXPOSE 8080
VOLUME /slm
ADD boot-docker-0.0.1-SNAPSHOT.jar boot-docker.jar
RUN sh -c 'touch /boot-docker.jar'
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /boot-docker.jar" ]
  • 执行构建命令,使用docker images查看构建的镜像,docker run启动容器后即可访问web项目

docker build -t boot-docker .

方法二:使用maven构建

  • 在pom.xml加入docker插件

<plugin>

<groupId>com.spotifygroupId>
<artifactId>docker-maven-pluginartifactId>
<version>0.4.13version>
<configuration>

<imageName>${docker.image.prefix}/${project.artifactId}imageName>
 
<dockerDirectory>src/main/dockerdockerDirectory>
<resources>
<resource>
<targetPath>/targetPath>
<directory>${project.build.directory}directory>
<include>${project.build.finalName}.jarinclude>
resource>
resources>
configuration>
plugin>
  • 把项目压缩zip,复制到服务器中并解压

  • 在项目路径下执行mvn打包命令 mvn package docker:build (服务器需要有maven环境)即可生成镜像