gpt4 book ai didi

docker - `docker buildx build` 使用私有(private) CA 签名的 TLS 证书引用 repo 时失败

转载 作者:行者123 更新时间:2023-12-05 02:27:48 27 4
gpt4 key购买 nike

当使用自签名 CA 签名的 TLS 证书基于私有(private)存储库中的图像构建 Docker 图像时,如果该 CA 已经在 macOS Keychain 或 Windows Trusted Certificate Store 中,则一切正常——只要当您使用 docker build 构建时。

但是,当使用 docker buildx build 时,找不到 CA,并且构建失败并出现证书错误。

考虑这个 Dockerfile:

FROM dockerhub.my.private.mirror.org/oraclelinux:8.6

使用 docker build 它工作正常:

% docker build .
...
=> CACHED [1/1] FROM dockerhub.my.private.mirror.org/oraclelinux:8.6
...

但是,使用 docker buildx build 它失败了:

% docker buildx build --load .
...
=> ERROR [internal] load metadata for dockerhub.my.private.mirror.org/oraclelinux:8.6
------
> [internal] load metadata for dockerhub.my.private.mirror.org/oraclelinux:8.6:
------
Dockerfile:1
--------------------
1 | >>> FROM dockerhub.my.private.mirror.org/oraclelinux:8.6
2 |
--------------------
error: failed to solve: dockerhub.my.private.mirror.org/oraclelinux:8.6: ↩
failed to do request: Head "https://dockerhub.my.private.mirror.org/v2/oraclelinux/manifests/8.6": ↩
x509: certificate signed by unknown authority

有谁知道如何配置 docker buildx 以在 macOS、Windows 和 Linux 上使用私有(private) CA 证书?

最佳答案

我的回答是基于这个:https://github.com/docker/buildx/blob/master/docs/guides/custom-registry-config.md

  1. 创建一个 buildkitd.toml 并配置您的私有(private) CA 证书:
[registry."your.dockerimagehost.example"]
ca=["/home/downloads/mycacert.pem"]
  1. 创建一个 docker 构建器
docker buildx create --use --config buildkitd.toml
  1. 那么你的构建命令应该可以工作了

关于docker - `docker buildx build` 使用私有(private) CA 签名的 TLS 证书引用 repo 时失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72894189/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com