maven package docker:构build – 连接被拒绝
我正在尝试用mvn package docker:build
构build一个maven的mvn package docker:build
。
Docker正在运行, docker ps
向我展示了我的容器,所以我假定一切正常运行。 我确实收到以下错误:
[错误]无法执行目标com.spotify:docker-maven-plugin:0.2.3:build(default-cli)on project reservier:Exception caught:java.util.concurrent.ExecutionException:com.spotify.docker.client。 shaded.javax.ws.rs.ProcessingException:o rg.apache.http.conn.HttpHostConnectException:连接到本地主机:2375 [localhost / 127.0.0.1,localhost / 0:0:0:0:0:0:0:1 ]失败:连接被拒绝:连接 – >
我的第一个方法是,因为我在窗口上工作,我需要调用docker机IP地址而不是本地主机,但也没有工作。 我有点不知所措,因为我认为这很简单,我做错了,但是当docker(貌似)运行正常的时候,我找不到连接拒绝的错误。
如果这是微不足道的,我很抱歉。
我使用这个设置解决了这个问题:
<configuration> <imageName>10.10.8.175:5000/${artifactId}:${project.version}</imageName> <dockerHost>https://192.168.99.100:2376</dockerHost> <dockerCertPath>C:\Users\AtomView\.docker\machine\machines\default</dockerCertPath> <dockerDirectory>src/main/resources/docker</dockerDirectory> <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}</directory> <include>*.zip</include> </resource> </resources> </configuration>
尝试运行“docker-machine ls”来检查IP,如果它不是本地主机地址,则需要在插件configuration中使用dockerHost标记。 例如: <dockerHost>https://192.168.99.100:2376</dockerHost>
插件的最新版本是0.4.1而不是0.2.3
在MacOs上,我只是设置环境variables,如图所示
docker-machine env
从IDE运行构build时,请确保正确设置这些variables。
在使用Docker / Hyper-V的Windows上,com.spotify发生了这个问题:docker-maven-plugin:1.0.0。 在另一个论坛上有一个讨论,他们build议打开
在泊坞窗设置/常规选项卡。 它为我工作。
在Windows 7 64上,docker env安装起来似乎有些棘手,因为它需要一个linuxVM来运行(更新以前的vbox安装问题) https://github.com/docker/machine/issues/3396 )
幸运的是,在docker快速启动terminal,我们可以做到:
$ docker-machine.exe env export DOCKER_TLS_VERIFY="1" export DOCKER_HOST="tcp://192.168.99.101:2376" export DOCKER_CERT_PATH="C:\Users\uv\.docker\machine\machines\default" export DOCKER_MACHINE_NAME="default" # Run this command to configure your shell: # eval $("C:\Program Files\Docker Toolbox\docker-machine.exe" env)
向我们展示了要插入到插件configuration中的内容
<dockerHost>https://192.168.99.101:2376</dockerHost>
但只有在使用这里发现的build议后:
Docker:尝试连接时发生错误
重要的是:
Run FOR /f "tokens=*" %i IN ('docker-machine env --shell cmd default') DO %i
我们可以运行mvnw docker:build
在cmd / intellijterminal中成功mvnw docker:build
🙂
下面的修改解决了我在OSX El Capitan,Docker Version 1.12.1(build:12133)上的问题:
export DOCKER_HOST=unix:///var/run/docker.sock
如果mvn package docker:build
仍然失败,请重新启动docker。