使用Docker Buildx在推送镜像到注册表时失败:没有这样的主机。

4

我将我的注册表虚拟机主机名添加到了/etc/hosts文件中,然后docker pull <registry_name>/<imagename>命令可以正常工作。 但是,当我尝试使用docker buildx build .. --push命令推送到同一注册表时,它会抛出错误:

 => ERROR exporting to image                                                                                                             2.3s
 => => exporting layers                                                                                                                  1.9s
 => => exporting manifest sha256:...                                        0.1s
 => => exporting config sha256:...                                          0.0s
 => => exporting manifest sha256: ...                                       0.0s
 => => exporting config sha256:                                             0.1s
 => => exporting manifest list sha256:                                      0.0s
 => => pushing layers                                                                                                                    0.1s
------
 > exporting to image:
------
failed to solve: rpc error: code = Unknown desc = failed to do request: Head https://<registry_name>/v2/...: dial tcp: lookup <registry_name> : no such host

Docker buildx 是否不会查看 /etc/hosts 文件?

进一步更新:上述命令适用于Docker Hub推送,但在VM上设置本地主机注册表时无法使用。出现相同的错误: - NamrataB
1个回答

3

可以通过设置--driver-opt来使用主机网络来实现。


2
谢谢@NamrataB的提示。以下命令对我有用:docker buildx create --driver-opt=network=host - albertteoh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接