Docker Maven Spotify 插件 - 可以切换到非安全注册表
Posted
技术标签:
【中文标题】Docker Maven Spotify 插件 - 可以切换到非安全注册表【英文标题】:Docker Maven Spotify plugin - Possible to switch to non-secure registry 【发布时间】:2016-07-23 05:55:16 【问题描述】:我正在使用Spotify Maven plugin 在执行某些 maven 目标时自动构建和部署 docker 映像。
但是,我正在运行一个可通过以下主机访问的私有不安全注册表:server.mydomain.com:5000。但是,我似乎无法阻止插件强制安全推送到存储库?它使用https://server.mydomain.com:5000。
有没有办法强制插件不使用https?
谢谢。
编辑:
当前插件 POM 配置:
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.3</version>
<configuration>
<imageName>server.mydomain.com:5000/$project.artifactId</imageName>
<baseImage>java</baseImage>
<entryPoint>["java", "-jar", "/$project.build.finalName-packaged.jar"]</entryPoint>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>$project.build.directory</directory>
<include>$project.build.finalName-packaged.jar</include>
</resource>
</resources>
<imageTags>
<imageTag>$project.version</imageTag>
<imageTag>latest</imageTag>
</imageTags>
<retryPushCount>0</retryPushCount>
</configuration>
<executions>
<execution>
<id>build-image</id>
<phase>package</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
<execution>
<id>push-image</id>
<phase>deploy</phase>
<goals>
<goal>push</goal>
</goals>
</execution>
</executions>
</plugin>
【问题讨论】:
发布您遇到的异常会很有帮助。 我认为这个问题与描述的行为相符:github.com/spotify/docker-maven-plugin/issues/183 将不得不等待解决! 【参考方案1】:这似乎是 Docker 行为,与您使用的 maven 插件无关,请参阅 this Docker issue,其中提到在启动 Docker 守护程序时需要设置 --insecure-registry http://server.mydomain.com:5000
。
【讨论】:
我相信这是插件本身的问题... Docker 守护程序设置正确,并设置了 insecure-registry 选项。但是,当执行 push-image 目标时,插件会尝试推送到 https://(不是 http) 同样的问题,我有com.spotify.docker.client.shaded.javax.ws.rs.ProcessingException: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
我已经从我的环境中删除了DOCKER_CERT_PATH
并将不安全的注册表标志添加到引擎中。会不会是插件的bug?以上是关于Docker Maven Spotify 插件 - 可以切换到非安全注册表的主要内容,如果未能解决你的问题,请参考以下文章
使用 spotify maven 插件在 Windows 10 上使用 Docker 创建 Springboot 映像
Maven一键部署Springboot到Docker仓库,为自动化做准备