为什么jib-dockerBuild插件无法连接



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

./mvnw -ntp -Pprod verify jib:dockerBuild

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

[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]

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

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

一些注意事项

我不知道手动编辑配置是否导致了错误,事实上,我很确定只删除了与谷歌相关的条目,但没有删除任何与docker.*或类似的条目。

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

相反,只需遵循错误消息试图告诉您的内容:docker无法访问这些url。排除网络问题(例如,可以使用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并重新启动该命令,看看它是否足够。如果不是,请登录第二个,然后它就会工作。

我通过Gradle:运行起重臂

./gradlew jibDockerBuild

并且得到了类似的错误

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':jibDockerBuild'.
> com.google.cloud.tools.jib.plugins.common.BuildStepsExecutionException: Build to Docker daemon failed, perhaps you should make sure your credentials for 'registry-1.docker.io/library/openjdk' are set up correctly. See https://github.com/GoogleContainerTools/jib/blob/master/docs/faq.md#what-should-i-do-when-the-registry-responds-with-unauthorized for help

奇怪的是,最终为我解决了这个错误的是注销Docker Desktop的

后来,我在登录Docker Desktop时也尝试了funder7的解决方案,这也奏效了。

相关内容

  • 没有找到相关文章

最新更新