为什么 jib dockerBuild 插件无法连接

Why jib dockerBuild plugin fails to connect

我正在尝试为我正在进行的项目构建 docker 图像。 它基于 jhipster,在配置项目后它告诉我 运行 以下 maven 命令:

./mvnw -ntp -Pprod verify jib:dockerBuild

不幸的是它似乎不起作用,它 returns 我这个错误:

[WARNING] The credential helper (docker-credential-pass) has nothing for server URL: registry.hub.docker.com
...
[WARNING] The credential helper (docker-credential-pass) has nothing for server URL: index.docker.io
[WARNING] 

最后失败了:

[ERROR] Failed to execute goal com.google.cloud.tools:jib-maven-plugin:2.4.0:dockerBuild (default-cli) on project booking: (null exception message): NullPointerException -> [Help 1]

最近在做一个google云项目,编辑了~/.docker/config.json配置文件。我不得不删除 google 的配置条目以解决另一个问题。这可能是我现在面临的问题的根源吗?

我试过 docker logoutdocker login 但没有成功。

一些注意事项

我不知道是否手动编辑配置导致错误,事实上我很确定只删除了 google-related 条目,但没有提到 docker.* 或类似的.

要解决此问题,避免手动编辑 docker 配置文件。事实上,我认为应该尽可能避免它,以避免任何类型的配置问题。

相反,只需按照错误消息试图告诉您的内容操作即可:docker 无法访问这些网址。排除网络问题(可以用ping registry-1.docker.io等方式排查),应该是认证问题

如何修复

我发现 运行 这些命令修复了它:

docker login registry.hub.docker.com

docker login registry-1.docker.io

我不知道 registry-1.docker.io 是否只是另一个第一台服务器的镜像,插件在第一次连接失败后尝试访问该服务器。您可以尝试登录registry.hub.docker.com和re-launch命令,看看是否足够。如果不是,请登录到第二个,然后它将起作用。