Xtr*_*ica 6 maven docker spring-boot
我有一个Spring Boot项目,我想从该项目构建映像并将其推送到Docker私有注册表。我已经使用Spotify Docker Maven插件来关注Spring Boot的官方文档。使用Boot2Docker将映像发布到Docker本地实例时,效果很好。
现在,我正在尝试使用远程私有存储库(无担保的存储库)执行相同的操作,并且我正为此而苦苦挣扎。我遵循了插件文档,这就是我的配置:
<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>0.4.9</version>
<configuration>
<imageName>service-discovery</imageName>
<dockerDirectory>src/main/docker</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.war</include>
</resource>
</resources>
</configuration>
<executions>
<execution>
<id>build-image</id>
<phase>package</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
<execution>
<id>tag-image</id>
<phase>package</phase>
<goals>
<goal>tag</goal>
</goals>
<configuration>
<image>service-discovery</image>
<newName>develop01.mycompany.com:5000/service-discovery</newName>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
Run Code Online (Sandbox Code Playgroud)
我的注册表可通过访问http://develop01.mycompany.com:5000,但docker插件似乎无法找到它。
执行mvn全新安装抛出:
[错误]无法在项目服务发现时执行目标com.spotify:docker-maven-plugin:0.4.9:build(构建d映像):捕获的异常:java.util.concurrent.Ex ecutionException:com.spotify。 docker.client.shaded.javax.ws.rs.ProcessingExcepti on:org.apache.http.conn.HttpHostConnectException:连接到localhost:2375 [lo calhost / 127.0.0.1,localhost / 0:0:0:0:0: 0:0:1]失败:连接被拒绝:连接t-> [帮助1]
执行mvn docker:tag -DpushImage抛出:
[错误]在项目服务发现时无法执行目标com.spotify:docker-maven-plugin:0.4.9:tag(默认t-cli):目标com.spotify:docker的参数'image','newName' -maven-plugin:0.4.9:tag丢失或无效-> [帮助1]
因此,该插件似乎无法识别映像目标中的参数(实际上,它看起来像是在执行mvn clean install时尝试连接到本地Docker实例)。
软件:
我创建的GitHub问题的链接
更新资料
我已经将DOCKER_HOST环境变量设置为tcp://develop01.mycompany.com:5000,现在插件似乎可以选择它了。在执行配置中声明服务器名称时,仍然不明白为什么必须通过环境变量来执行此操作。总而言之,这就是我现在遇到的错误:
[错误]无法在项目服务发现上执行目标com.spotify:docker-maven-plugin:0.4.9:build(构建d映像):捕获到异常:请求错误:GET http://develop01.mycompany.com :5000 /版本:404:找不到HTTP 404-> [帮助1]
实际上,我的注册表的/ version端点返回404。但是/ v2端点返回一个空的JSON。插件是否要处理以前的Docker版本的API?
| 归档时间: |
|
| 查看次数: |
1791 次 |
| 最近记录: |