Docker:无法读取CA证书
我在Windows10Pro上安装了Docker,但无法使其工作 当我尝试运行hello world时,我得到Docker:无法读取CA证书,docker,windows-10,Docker,Windows 10,我在Windows10Pro上安装了Docker,但无法使其工作 当我尝试运行hello world时,我得到 could not read CA certificate 它正在计算机/计算机/默认值中查找证书。但是,该文件夹不存在 我创建了一个名为“default”的机器(它创建了上述文件夹),但没有任何帮助 在此之前,我创建了另一台名为“dev”的机器,它似乎有证书,但这似乎也没有帮助 机器/机器中也有证书文件-我不知道是否应该让Docker查找该文件夹(而不是机器/机器/默认) 我是D
could not read CA certificate
它正在计算机/计算机/默认值中查找证书。但是,该文件夹不存在
我创建了一个名为“default”的机器(它创建了上述文件夹),但没有任何帮助
在此之前,我创建了另一台名为“dev”的机器,它似乎有证书,但这似乎也没有帮助
机器/机器中也有证书文件-我不知道是否应该让Docker查找该文件夹(而不是机器/机器/默认)
我是Docker的新手,所以我可能错过了一些东西。然而,我整天都在做这件事,阅读了Docker文档,尝试了大量的解决方案和类似的答案,但似乎没有任何效果 我也有同样的问题。问题是,我从Docker工具箱升级到了Docker for Windows。卸载时,不会删除用户特定的环境变量。下面是我的诀窍:
- 转到控制面板\所有控制面板项目\系统
- 单击高级系统设置
- 转到“高级”选项卡,然后单击“环境变量”
- 从系统/用户变量中删除所有
条目。DOCKER.*
DOCKER\u TLS\u VERIFY
DOCKER\u证书路径
DOCKER\u主机
DOCKER\u工具箱\u安装路径
[Environment]:SetEnvironmentVariable(“DOCKER\u CERT\u PATH”、$null,“User”)
[Environment]:SetEnvironmentVariable(“DOCKER\u HOST”$null,“User”)
[Environment]:SetEnvironmentVariable(“DOCKER\u MACHINE\u NAME”,$null,“User”)
[Environment]:SetEnvironmentVariable(“DOCKER\u TLS\u VERIFY”,$null,“User”)
[Environment]::SetEnvironmentVariable(“DOCKER\u TOOLBOX\u INSTALL\u PATH”,$null,“User”)
- 嘿,我也遇到过类似的问题,我是从这种错误开始的
':打开
///管道/码头工人/发动机'
在那之后,我的证书也有问题。
我所做的是将我的证书文件的位置更改为另一个位置,并通过环境变量DOCKER\u cert\u PATH指向它。然后我经历了所有不同的问题,这些问题最终只是部分解决了我的问题。最后,我卸载了docker toolbox和VM Virtualbox,并使用不同的旧驱动程序NDIS5重新安装了它,您可以在安装过程中在向导中选择NDIS5。它解决了我在win10上与Docker的所有问题
有时候没那么棘手。我刚刚通过这样做解决了这个问题: 转到这台电脑:->在搜索栏中键入ca.pem ->现在去那个地方复制它
->现在转到高级系统设置->环境变量->编辑-DOCKER\u CERT\u PATH->并粘贴该位置,这样它将运行删除环境变量并运行上述命令对我有效:
[Environment]::SetEnvironmentVariable("DOCKER_CERT_PATH", $null, "User")
[Environment]::SetEnvironmentVariable("DOCKER_HOST", $null, "User")
[Environment]::SetEnvironmentVariable("DOCKER_MACHINE_NAME", $null, "User")
[Environment]::SetEnvironmentVariable("DOCKER_TLS_VERIFY", $null, "User")
[Environment]::SetEnvironmentVariable("DOCKER_TOOLBOX_INSTALL_PATH", $null, "User")
我也有同样的问题。我已将DOCKER\u CERT\u路径值更改为C:\Users\adity.DOCKER\machine\certs。它工作得很好。对于那些在Oracle VM Virtualbox上运行docker机器的人,只需删除损坏的机器并重新创建 由于没有“重新创建”命令,您可以使用以下命令删除损坏的计算机:
docker机器rm docker机器名称在此 e、 g.docker机器rm boot2docker
或手动卸下机器。 要手动删除,请转到“C:\Users\user'\.docker\machine\machines”,您将找到机器的目录列表,并删除损坏机器的目录 要创建新机器,请使用以下命令: docker machine create-d virtualbox--virtualbox memory 4096此处显示您的机器名称 e、 g.docker机器创建-d virtualbox——virtualbox内存4096 boot2docker 使用以下命令验证创建是否成功、状态和配置详细信息: docker machine env此处显示您的机器名称 e、 g.docker机器环境引导器docker 您可以尝试另一种快捷方式,以避免丢失现有的容器和docker图像;使用以下命令重新创建证书: docker机器重新生成证书此处显示您的机器名称
e、 g.docker计算机重新生成证书boot2docker环境变量从以前(长时间)移除的docker Toolbox安装中挂起,导致docker Desktop出现此问题(在HyperV后正常启动)。将其全部移除,移除这些环境变量
- DOCKER_TLS_验证
- DOCKER\u证书路径
- DOCKER_主机
- DOCKER\u工具箱\u安装\u路径
,重新启动终端,现在一切都很好是的!对于我们这些迁移的人来说,这就是你需要做的。真的有必要卸载virtual box吗?难道你不能不运行它吗?如上所述,在清理后工作正常。不必重新启动。它也可以在Winows 8.1上工作。我不必重新启动。如果这会很痛苦,为什么要让它变得简单?(我作为使用Windows的开发人员的生活)我尝试过这一点,并通过了证书颁发的困难,但在tcp ip地址出现问题后:我最终删除了所有以DOCKER_…或COMPOSE_…开头的环境变量,因为我使用了DOCKER toolbox(Windows 10 familial)在Windows 10 professional上卸载并最终安装docker之前。解决方案如下所述。