首先
开启Docker远程访问许可
: 并注意防火墙配置
vi /usr/lib/systemd/system/docker.service
加入下面两行
ExecStart=
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
pom.xml 相关依赖
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>
<dependencies>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>javax.activation-api</artifactId>
<version>1.2.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
<configuration>
<!-- docker目的地的地址 -->
<dockerHost>http://*填自己目的地的ip*:2375</dockerHost>
<!--镜像名称以及版本号-->
<imageName>${docker.image.prefix}:1.0.0</imageName>
<imageTags>
<imageTag>latest</imageTag>
</imageTags>
<!--依赖的基础镜像-->
<baseImage>java</baseImage>
<!-- Dockerfile的位置-->
<dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
<!-- 这里是复制 jar 包到 docker 容器指定目录配置-->
<workdir>/ROOT</workdir>
<entryPoint>["java", "-jar", ${project.build.finalName}.jar]</entryPoint>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
<!-- Docker maven plugin -->
</plugins>
</build>
Dockerfile位置
Dockerfile 内容
FROM java:8
MAINTAINER haoxuanli kslup7@gmail.com
VOLUME /tmp
ADD hobbymatcher-1.0.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java", "-jar", "app.jar"]
执行命令
mvn clean package docker:build
搞定