适用于 Windows 的 Docker Desktop 常见问题解答

我可以将 VirtualBox 与 Docker Desktop 一起使用吗?

是的,如果您在机器上启用了 Windows Hypervisor Platform 功能,则可以将 VirtualBox 与 Docker Desktop 一起运行。

为什么需要 Windows 10 或 Windows 11?

Docker Desktop 使用 Windows Hyper-V 功能。虽然较旧的 Windows 版本具有 Hyper-V,但其 Hyper-V 实现缺乏对 Docker Desktop 工作至关重要的功能。

我可以在 Windows Server 上运行 Docker Desktop 吗?

否,不支持在 Windows Server 上运行 Docker Desktop。

我是否可以根据特定于容器的部署要求更改共享卷的权限?

Docker Desktop 不允许您控制 () 共享卷上的 Unix 样式权限 deployed containers,而是将权限设置为默认值 0777 (、 、 permissions for 和 for ),该值不可配置。chmodreadwriteexecuteusergroup

有关解决方法和了解更多信息,请参阅共享卷的数据目录的权限错误

Docker Desktop 支持两种类型的符号链接:Windows 本机符号链接和在容器内创建的符号链接。

Windows 本机符号链接在容器中显示为符号链接,而在容器内创建的符号链接表示为 mfsymlinks。这些是具有特殊元数据的常规 Windows 文件。因此,在容器内创建的符号链接在容器内显示为符号链接,但在主机上显示为符号链接。

使用 Kubernetes 和 WSL 2 进行文件共享

Docker Desktop 将 Windows 主机文件系统挂载在运行 Kubernetes 的容器内。 有关如何配置 Kubernetes 持久卷以表示主机上的目录的示例,请参阅 Stack Overflow 博文/run/desktop

如何添加自定义 CA 证书?

您可以将受信任的证书颁发机构 (CA) 添加到 Docker 守护程序中,以验证注册表服务器证书和客户端证书,以便向注册表进行身份验证。

Docker Desktop 支持所有受信任的证书颁发机构 (CA)(根或 intermediate) 的Docker 识别存储在 Trust Root 下的证书 证书颁发机构或中间证书颁发机构。

Docker Desktop 根据 Windows 证书存储,并将其附加到 Moby 受信任证书。因此,如果主机上的用户信任企业 SSL 证书,则 Docker Desktop 也信任该证书。

要了解有关如何为注册表安装 CA 根证书的更多信息,请参阅 Docker Engine 主题中的使用证书验证存储库客户端

如何添加客户端证书?

您可以添加客户端证书 in 和 .您无需使用命令推送证书。~/.docker/certs.d/<MyRegistry><Port>/client.cert~/.docker/certs.d/<MyRegistry><Port>/client.keygit

当 Docker Desktop 应用程序启动时,它会将 Windows 系统上的文件夹复制到 Moby(在 Hyper-V 上运行的 Docker Desktop 虚拟机)上的目录。~/.docker/certs.d/etc/docker/certs.d

对钥匙串进行任何更改后,您需要重新启动 Docker Desktop 或目录,以使更改生效。~/.docker/certs.d

注册表不能列为不安全的注册表(请参阅 Docker 守护程序)。Docker Desktop 忽略 证书列在不安全的注册表下,并且不发送客户端 证书。类似的命令尝试从注册表中提取 在命令行和注册表上生成错误消息。docker run

要了解有关如何设置客户端 TLS 证书以进行验证的更多信息,请参阅 Docker Engine 主题中的使用证书验证存储库客户端