2

我目前处于开发环境中,因此到处都没有证书,或者它们不合规(使用 myrepo.dev.corp.fr,其中证书为 *.corp.fr)。

我正在尝试docker push使用不安全的 docker 存储库,但出现多个错误:

获取https://repo.dev.corp.fr/v2/:x509:证书对 *.corp.fr 有效,而不是 repo.dev.corp.fr

或者

获取https://anotherrepo.corp.fr/v2/ : x509: 未知权威签署的证书

我试图告诉 docker 存储库不安全,不要使用 TLS 或任何东西,但我不能。

我在 docker 版本 18.09.6 上。我没有root权限,/etc/所以我不能修改daemon.json或那里的任何东西。而且我也无法重新启动 docker 服务。但是,我确实具有对~/.docker/.

我试过的:

  • 将另一个文件设置为 conf docker --config-file mufile.json push etc.,但似乎不应该以这种方式使用 ( unknown flag: --config-file)

  • --inscure-registry repo.dev.corp.fr在我的 docker cli 中使用。我已经尝试了一些在网站上解释的东西(https://docs.docker.com/engine/reference/commandline/cli/)。将环境变量设置为 Linux env var 似乎不起作用,是否需要在文件中设置?例如,export DOCKER_CONTENT_TRUST=1仍然给我一个“未知权威签署的证书”。码头工人此时不应该停止检查证书吗?

  • 这里(将不安全的注册表添加到 Docker)他们正在使用DOCKER_EXTRA_REGISTRIES='--insecure-registry b.example.com',但它位于/etc/. 所以我无法改变它。

  • 我可以制作自己的证书并告诉 docker 使用它,但我需要在我尝试加入的 repo 上更改它,对吗?certificate signed by unknown authority我猜还是会有的。此外,我想要实现的目标似乎有点复杂。

问题:

有了我尝试过的所有东西,我可能做错了一些事情,所以也许这里有一些东西要重试......

  • docker 如何使用它的环境变量,如 DOCKER_TLS :它在文件中吗?或者我可以自己将其设置为环境变量吗?如何检查 docker 是否正在使用它们?
  • 有没有办法告诉 docker 在不修改任何文件的情况下不要检查证书/etc/
4

0 回答 0