在 Docker 中,DOCKER_TLS_VERIFY=0 的作用是什么?
In Docker, what DOCKER_TLS_VERIFY=0 does?
我 运行 Docker Windows 10,我注意到默认情况下 DOCKER_TLS_VERIFY=0
.
我有几个问题:
- 这是否意味着我正在不安全地从 Docker Hub 中提取图像?
- 当设置为
0
时,Docker 是否通过 https
拉取图像?
- 是否建议设置为
1
?
与 docker 集线器等外部注册表服务器的通信将默认使用 TLS,此选项的用途非常不同。
DOCKER_TLS_VERIFY 告诉 docker 客户端(又名 docker
命令)是否使用任何 TLS 验证与 docker 守护程序(dockerd
)通信.如果设置为 1,服务器需要有私有 CA 签名的密钥对,客户端也需要有同一个 CA 签名的密钥对。此设置告诉客户端验证它收到的服务器密钥是否由私有 CA 签名。 daemon/server 将具有类似的设置来验证客户端证书。
如果您通过网络与远程 docker 引擎通信,这将非常糟糕,因为这意味着远程 docker 引擎允许任何人点击 API(提供根级别访问权限),无需任何客户端凭据。当与受文件系统权限保护的本地套接字通信时,不需要此功能。
此变量记录在此处:https://docs.docker.com/engine/reference/commandline/cli/
此处记录了使用 TLS 密钥配置守护程序和客户端的步骤:https://docs.docker.com/engine/security/https/
对于 windows,上述许多步骤都需要翻译(例如 daemon.json 文件的不同位置)。看看以下内容:
https://docs.docker.com/engine/reference/commandline/dockerd/
我 运行 Docker Windows 10,我注意到默认情况下 DOCKER_TLS_VERIFY=0
.
我有几个问题:
- 这是否意味着我正在不安全地从 Docker Hub 中提取图像?
- 当设置为
0
时,Docker 是否通过https
拉取图像? - 是否建议设置为
1
?
与 docker 集线器等外部注册表服务器的通信将默认使用 TLS,此选项的用途非常不同。
DOCKER_TLS_VERIFY 告诉 docker 客户端(又名 docker
命令)是否使用任何 TLS 验证与 docker 守护程序(dockerd
)通信.如果设置为 1,服务器需要有私有 CA 签名的密钥对,客户端也需要有同一个 CA 签名的密钥对。此设置告诉客户端验证它收到的服务器密钥是否由私有 CA 签名。 daemon/server 将具有类似的设置来验证客户端证书。
如果您通过网络与远程 docker 引擎通信,这将非常糟糕,因为这意味着远程 docker 引擎允许任何人点击 API(提供根级别访问权限),无需任何客户端凭据。当与受文件系统权限保护的本地套接字通信时,不需要此功能。
此变量记录在此处:https://docs.docker.com/engine/reference/commandline/cli/
此处记录了使用 TLS 密钥配置守护程序和客户端的步骤:https://docs.docker.com/engine/security/https/
对于 windows,上述许多步骤都需要翻译(例如 daemon.json 文件的不同位置)。看看以下内容:
https://docs.docker.com/engine/reference/commandline/dockerd/