我正在尝试Docker通过IDEA工作系统连接Windows 8.1。连接虚拟机时出现错误:
com.github.dockerjava.api.exception.DockerClientException:启用 TLS 验证 (DOCKER_TLS_VERIFY=1) 但证书路径 (DOCKER_CERT_PATH) 'C:\Users\ЕвгеРРРёР№\.docker\machine\machines\default' 不存在.
错误的原因很容易找出。环境变量如下:
DOCKER_CERT_PATH=C:\Users\Eugene\.docker\machine\machines\default
路径中的单词Евгений似乎被解释为错误的编码(特别是在 windows-1251 中),因此出现了所有问题。当然,我想到了两个最简单的解决方案:
- 将带有证书的文件夹放在不同的路径中(没有西里尔字母)。
- 重命名系统用户。
还有其他方法吗?如何在编码中强制IDEA收紧环境变量UTF-8?
UPD (05/09/22):将带有证书的文件夹放在不同的路径中不会提供任何东西。因为当我更改环境变量中的路径,然后启动虚拟机时,路径被设置回原来的路径。显然 Oracle VM 会这样做,我不明白如何禁用此行为。我还尝试将 DOCKER_TLS_VERIFY 环境变量更改为 0 以完全禁用证书验证,但该变量在 VM 启动时也设置为 1。


通过重命名用户和他的文件夹解决了这个问题。
这
Windows 8.1是相当困难的,结果,我差点把系统给杀了。但现在一切正常,Docker开始,IDEA连接。我有另一种选择:更改 docker 机器中的环境变量,但我没有找到这样做的方法。使用以下命令:
我没有找到允许您设置环境变量的选项。