在使用 docker-maven-plugin 构建 Spring Boot 应用的 Docker 镜像时,得到一个错误信息: “com.spotify.docker.client.shaded.org.apache.http.impl.execchain.RetryExec execute
INFO: I/O exception (java.io.IOException) caught when processing request to {}->unix://localhost:80: Connection reset by peer
“ , 看错误信息,感觉像是无法访问网络。

出错时所用的 pom.xml 中 Docker 的设置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!-- Docker -->
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.2.2</version>
<configuration>
<imageName>Account-Srv</imageName>
<baseImage>openjdk:8-jre-alpine</baseImage>
<entryPoint>["java", "-jar", "/#123;project.build.finalName}.jar"]</entryPoint>
<!-- copy the service's jar file from target into the root directory of the image -->
<resources>
<resource>
<targetPath>/</targetPath>
<directory>#123;project.build.directory}</directory>
<include>#123;project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>

查了一些资料并测试后,发现问题很简单,是 imageName 这一项不能包含大写字母,只需要将 pom.xml 文件中的 “Account-Srv” 改为 “account-srv” 即可解决这个问题。