1、pom文件增加docker插件
<properties>
<java.version>1.8</java.version>
<docker.plugin.version>1.1.1</docker.plugin.version>
<docker.image.prefix>qinxq</docker.image.prefix>
</properties>
<build>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<!-- Docker maven plugin -->
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>${docker.plugin.version}</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
</executions>
<configuration>
<imageName>${docker.image.prefix}/${project.artifactId}:${project.version}</imageName>
<dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
<skipDockerBuild>false</skipDockerBuild>
<dockerHost>http://192.168.1.10:2376</dockerHost>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
<!-- Docker maven plugin -->
</plugins>
</build>
docker.image.prefix :docker镜像前缀
dockerHost : 已安装docker的机器ip地址(本次环境为linux虚拟机地址),如本机已安装可去除dockerHost
dockerDirectory : Dockerfile文件的在项目中的位置
2、编写 Dockerfile 文件
FROM openjdk:8-jdk-alpine
MAINTAINER qinxq qinxq_vip@163.com
ADD ./single.jar /app/
ENTRYPOINT ["java","-Xmx512m","-Duser.timezone=GMT+8","-Djava.security.egd=file:/dev/./urandom","-jar","/app/single.jar"]
FROM openjdk:8-jdk-alpine : JDK环境基础镜像
MAINTAINER : 修改人信息 [name] [email]
ADD : 添加 springboot 的 jar 包
ENTRYPOINT:相关执行参数
-Duser.timezone=GMT+8 :设置时区同步
3、 构建生成镜像
mvn clean package
ps: install 、 deploy 也可以
#如下图所示,没有异常,在docker机器中执行 docker images 可看到刚刚构建的镜像