准备工作
准备一台Linux服务器
搭建docker环境
构建一个jdk8的docker容器
搭建一个docker私服
拉取一个registry
docker pull registry
修改docker配置信任registry私服
vi /etc/docker/daemon.json
加入
{"insecure-registries":["私服地址:端口"]}
重启docker
systemctl restart docker
DockerMaven插件使用
修改服务器上docker配置,让其可以通过外网访问
vi /lib/systemd/system/docker.service
在ExecStart=后添加配置
-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
如下图
完成后刷新重启docker,启动registry
systemctl daemon-reload
systemctl restart docker
docker start registry
在需要构建的工程目录下的pom.xml增加
<build>
<finalName>工程名</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<!-- docker的maven插件,官网: https://github.com/spotify/docker-maven-plugin-->
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.13</version>
<configuration>
<imageName>私服地址:端口/${project.artifactId}:${project.version}</imageName>
<baseImage>私服地址:端口/jdk1.8</baseImage>
<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>
<dockerHost>http://服务器地址:2375</dockerHost>
</configuration>
</plugin>
</plugins>
</build>
到项目目录下执行命令打包发布到docker私服
mvn clean package docker:build -DpushImage