更改 Docker Desktop 设置
要导航到 设置 ,请执行以下任一操作:
- 选择 Docker 菜单,然后选择 Settings
- 从 Docker Desktop Dashboard 中选择 Settings 图标。
您还可以在以下位置找到该文件(对于 Docker Desktop 版本 4.34 及更早版本):settings-store.json
settings.json
- 苹果电脑:
~/Library/Group\ Containers/group.com.docker/settings-store.json
- 窗户:
C:\Users\[USERNAME]\AppData\Roaming\Docker\settings-store.json
- Linux的:
~/.docker/desktop/settings-store.json
常规
在 General (常规) 选项卡上,您可以配置何时启动 Docker 并指定其他设置:
在登录计算机时启动 Docker Desktop。选择以自动启动 Docker Desktop 时登录计算机。
在 Docker Desktop 启动时打开 Docker Dashboard。选择以自动打开 仪表板。
为 Docker Desktop 选择 theme。选择是否要将 Light 或 Dark 主题应用于 Docker Desktop。或者,您可以将 Docker Desktop 设置为 Use system settings(使用系统设置)。
选择 Container Terminal (集装箱码头)。确定从容器打开终端时启动的终端。 如果您选择集成终端,则可以直接从 Docker Desktop Dashboard 在正在运行的容器中运行命令。有关更多信息,请参阅浏览容器。
启用 Docker 终端。与您的主机交互并直接从 Docker Desktop 执行命令。
默认启用 Docker Debug。选中此选项可在访问集成终端时默认使用 Docker Debug。有关更多信息,请参阅浏览容器。
仅限 Mac 在 Time Machine 备份中包含 VM。选择备份 Docker Desktop 虚拟机。默认情况下,此选项处于关闭状态。
仅限 Windows 在没有 TLS 的 tcp://localhost:2375 上公开守护程序。选中此选项可 使旧客户端能够连接到 Docker 守护程序。您必须使用此选项 请谨慎使用,因为在没有 TLS 的情况下公开守护进程可能会导致远程代码 执行攻击。
仅限 Windows 使用基于 WSL 2 的引擎。WSL 2 提供的性能比 Hyper-V 后端。有关详细信息,请参阅 Docker Desktop WSL 2 后端。
仅限 Windows:将
*.docker.internal
名称添加到主机的/etc/hosts
文件(需要密码)。允许您从主机和容器解析 DNS 名称。*.docker.internal
使用 containerd 拉取和存储镜像。 打开 containerd 镜像存储。 这带来了一些新功能,例如通过延迟拉取镜像实现更快的容器启动性能、 以及使用 Docker 运行 Wasm 应用程序的能力。 有关更多信息,请参阅 containerd 镜像存储。
仅限 Mac 选择 Virtual Machine Manager (VMM)。选择用于创建和管理 Docker Desktop Linux VM 的 Virtual Machine Manager。
- 选择 Docker VMM 以获得最新、性能最高的 Hypervisor/Virtual Machine Manager。此选项仅在运行 macOS 12.5 或更高版本的 Apple Silicon Mac 上可用,目前处于 Beta 阶段。
提示
打开此设置可使 Docker Desktop 运行得更快。
- 或者,您可以选择 Apple 虚拟化框架、QEMU(适用于 Apple Silicon)或 HyperKit(适用于 Intel Mac)。对于 macOS 12.5 及更高版本,Apple 虚拟化框架是默认设置。
有关详细信息,请参阅 Virtual Machine Manager。
- 选择 Docker VMM 以获得最新、性能最高的 Hypervisor/Virtual Machine Manager。此选项仅在运行 macOS 12.5 或更高版本的 Apple Silicon Mac 上可用,目前处于 Beta 阶段。
仅限 Mac 为您的容器选择文件共享实现。选择是否要使用 VirtioFS、gRPC FUSE 或 osxfs (Legacy) 共享文件。VirtioFS 仅适用于 macOS 12.5 及更高版本,并且默认处于开启状态。
提示
使用 VirtioFS 实现快速文件共享。VirtioFS 将完成文件系统操作所需的时间缩短了 98%。它是 Docker VMM 支持的唯一文件共享实现。
仅限 Mac:在 Apple Silicon 上使用 Rosetta 进行 x86_64/amd64 仿真。打开 Rosetta 以加速 Apple Silicon 上的 x86/AMD64 二进制仿真。仅当您选择了 Apple Virtualization framework 作为 Virtual Machine Manager 时,此选项才可用。您还必须使用 macOS 13 或更高版本。
发送使用情况统计信息。选择,以便 Docker Desktop 发送诊断信息, 崩溃报告和使用情况数据。此信息可帮助 Docker 改进和 对应用程序进行故障排除。清除复选框以选择退出。Docker 可以 定期提示您了解更多信息。
使用增强的容器隔离。选择此项可通过防止容器破坏 Linux VM 来增强安全性。有关更多信息,请参阅增强的容器隔离。
注意
仅当您登录到 Docker Desktop 并拥有 Docker Business 订阅时,此设置才可用。
显示 CLI 提示。在 CLI 中运行 Docker 命令时显示 CLI 提示和提示。默认情况下,此选项处于打开状态。要从 CLI 打开或关闭 CLI 提示,请分别设置为 或 。
DOCKER_CLI_HINTS
true
false
SBOM 索引。启用此选项后,在 Docker Desktop 中检查镜像会显示一个 Start analysis (开始分析) 按钮,选中该按钮后,将使用 Docker Scout 分析镜像。
启用后台 SBOM 索引。启用此选项后,Docker Scout 会自动分析您构建或拉取的镜像。
仅限 Mac 自动检查配置。定期检查您的配置,以确保其他应用程序没有进行意外更改。
Docker Desktop 会检查您在安装期间配置的设置是否已被 Orbstack 等外部应用程序更改。Docker Desktop 检查:
- Docker 二进制文件的符号链接 .
/usr/local/bin
- 默认 Docker 套接字的符号链接。
此外,Docker Desktop 可确保在启动时切换到上下文。
desktop-linux
如果发现更改,您会收到通知,并能够直接从通知中恢复配置。有关更多信息,请参阅常见问题。
- Docker 二进制文件的符号链接 .
资源
Resources 选项卡允许您配置 CPU、内存、磁盘、代理、 网络和其他资源。
高深
注意
在 Windows 上,“高级”选项卡中的“资源分配”选项仅在 Hyper-V 模式下可用,因为 Windows 管理 WSL 2 模式和 Windows 容器模式下的资源。在 WSL 2 中 模式下,您可以配置对分配的内存、CPU 和交换大小的限制 添加到 WSL 2 实用程序 VM。
在 Advanced (高级) 选项卡上,您可以限制 Docker Linux VM 可用的资源。
高级设置包括:
CPU 限制。指定 Docker Desktop 使用的最大 CPU 数量。 默认情况下,Docker Desktop 设置为使用主机上可用的所有处理器。
内存限制。默认情况下,Docker Desktop 设置为最多使用主机 记忆。要增加 RAM,请将其设置为更大的数字;来减少它, 降低数字。
交换。根据需要配置交换文件大小。默认值为 1 GB。
虚拟磁盘限制。指定磁盘镜像的最大大小。
磁盘镜像位置。指定存储容器和镜像的 Linux 卷的位置。
您还可以将磁盘镜像移动到其他位置。如果您尝试 将磁盘镜像移动到已有磁盘镜像的位置,系统会询问您是否 想要使用现有镜像或替换它。
提示
如果您觉得 Docker Desktop 开始变慢或您正在运行 多容器工作负载,增加内存和磁盘镜像空间分配
资源节省器。启用或禁用 Resource Saver 模式, 这大大降低了主机上的 CPU 和内存利用率 当 Docker Desktop 处于空闲状态时自动关闭 Linux VM(即没有 containers 正在运行)。
您还可以配置 Resource Saver 超时,以指示多长时间 Docker Desktop 是否应该在资源节省程序模式启动之前处于空闲状态。默认值为 5 分钟。
注意
容器运行时,会自动退出 Resource Saver 模式。退出 可能需要几秒钟(~3 到 10 秒),因为 Docker Desktop 会重启 Linux VM。
文件共享
注意
在 Windows 上,“文件共享”选项卡仅在 Hyper-V 模式下可用,因为文件 在 WSL 2 模式和 Windows 容器模式下自动共享。
使用文件共享允许与您计算机上的本地目录共享 Linux 容器。这对于在 IDE 中编辑源代码特别有用 主机。
同步文件共享
同步文件共享是一种替代文件共享机制,它提供快速灵活的主机到 VM 文件共享,通过使用同步文件系统缓存来增强绑定挂载性能。适用于 Pro、Team 和 Business 订阅。
要了解更多信息,请参阅同步文件共享。
虚拟文件共享
默认情况下,、 、 和 目录是共享的。
如果您的项目位于此目录之外,则必须将其添加到列表中。
否则,您可能会在运行时获得 OR 错误。/Users
/Volumes
/private
/tmp
/var/folders
Mounts denied
cannot start service
文件共享设置包括:
添加目录。选择并导航到要添加的目录。
+
删除目录。选择要删除的目录旁边的
-
Apply & Restart使目录对使用Docker的容器可用。 bind mount () 功能。
-v
提示
- 仅与容器共享所需的目录。文件共享 引入开销,因为需要通知对主机上文件的任何更改 添加到 Linux VM。共享太多文件会导致 CPU 负载过高且速度变慢 文件系统性能。
- 共享文件夹旨在允许编辑应用程序代码 在主机上执行时。对于非代码项 比如缓存目录或数据库,性能会很多 最好使用它们存储在 Linux VM 中,使用数据卷(命名卷)或数据容器。
- 如果您将整个主目录共享到容器中,MacOS 可能会 提示您授予 Docker 对主目录的个人区域的访问权限,例如 您的提醒或下载。
- 默认情况下,Mac 文件系统不区分大小写,而 Linux 区分大小写。 在 Linux 上,可以创建两个单独的文件:和 , 而在 Mac 上,这些文件名实际上会引用相同的底层 文件。这可能会导致应用程序在开发者的 machine(共享文件内容的位置),但在 Linux 中运行时失败。 production (文件内容不同)。为避免这种情况,Docker Desktop 坚持所有共享文件都以其原始大小写进行访问。因此 如果创建的文件名为 ,则必须将其作为 打开。尝试 open 将失败,并显示错误 “No such file or directory”。同样地 创建 CALLED 文件后,尝试创建第二个 FILE CALLED 将失败。
test
Test
test
test
Test
test
Test
有关更多信息,请参阅卷挂载需要对
/Users
之外的任何项目目录进行文件共享
按需共享文件夹
在 Windows 上,您可以在容器首次使用特定文件夹时“按需”共享文件夹。
如果您从具有卷挂载的 shell 中运行 Docker 命令(如 示例)或启动包含卷挂载的 Compose 文件时,您会得到一个 弹出窗口询问您是否要共享指定的文件夹。
您可以选择共享它,在这种情况下,它会添加到您的 Docker Desktop 共享文件夹列表中,并可供 器皿。或者,您可以通过选择 Cancel (取消) 来选择不共享它。
代理
Docker Desktop 支持使用 HTTP/HTTPS 和 SOCKS5 代理。
HTTP/HTTPS 代理可以在以下情况下使用:
- 登录到 Docker
- 拉取或推送镜像
- 在镜像构建期间获取构件
- 容器与外部网络交互
- 扫描镜像
如果主机使用 HTTP/HTTPS 代理配置(静态或通过代理自动配置 (PAC)),Docker Desktop 会读取
此配置
并自动使用这些设置登录到 Docker、拉取和推送镜像,以及
容器 Internet 访问。如果代理需要授权,则 Docker Desktop 会动态询问
开发人员获取用户名和密码。所有密码都安全地存储在 OS 凭据存储中。
请注意,仅支持代理身份验证方法,因此我们建议使用 HTTP/HTTPS 代理的 URL,以保护在网络上传输的密码。Docker 桌面
与代理通信时支持 TLS 1.3。Basic
https://
要为 Docker Desktop 设置不同的代理,请打开手动代理配置并输入单个
上游代理 URL 或 .http://proxy:port
https://proxy:port
要防止开发人员意外更改代理设置,请参阅设置管理。
用于扫描镜像的 HTTPS 代理设置是使用环境变量设置的。HTTPS_PROXY
注意
如果您使用的是 Web 服务器上托管的 PAC 文件,请确保在服务器或网站上为文件扩展名添加 MIME 类型。如果没有此配置,可能无法正确解析 PAC 文件。
application/x-ns-proxy-autoconfig
.pac
重要
您无法使用 Docker 守护程序配置配置代理设置 file () 的 URL,我们建议您不要配置代理 设置。
daemon.json
config.json
要管理 Docker Desktop 的代理配置,请在 Docker Desktop 应用程序或使用 Settings Management。
代理身份验证
基本身份验证
如果您的代理使用基本身份验证,则 Docker Desktop 会提示开发人员输入用户名和密码并缓存凭据。所有密码都安全地存储在 OS 凭据存储中。如果该缓存被删除,它将请求重新身份验证。
建议您使用 HTTP/HTTPS 代理的 URL,以便在网络传输期间保护密码。Docker Desktop 还支持 TLS 1.3 与代理通信。https://
Kerberos 和 NTLM 身份验证
注意
适用于具有适用于 Windows 版本 4.30 及更高版本的 Docker Desktop 的 Docker Business 订阅者。
由于身份验证是集中式的,因此开发人员不再被代理凭证的提示打断。这还可以降低由于登录尝试错误而导致帐户锁定的风险。
如果您的代理在 407 (Proxy Authentication Required) 响应中提供多个身份验证方案,则 Docker Desktop 默认选择 Basic 身份验证方案。
对于 Docker Desktop 版本 4.30 到 4.31:
要启用 Kerberos 或 NTLM 代理身份验证,除了指定代理 IP 地址和端口之外,无需其他配置。
对于 Docker Desktop 版本 4.32 及更高版本:
要启用 Kerberos 或 NTLM 代理身份验证,必须在安装过程中通过命令行传递安装程序标志,并确保代理服务器已正确配置为 Kerberos 或 NTLM 身份验证。--proxy-enable-kerberosntlm
网络
注意
在 Windows 上,Network (网络) 选项卡在 Windows 容器模式下不可用,因为 Windows 管理网络。
Docker Desktop 将私有 IPv4 网络用于内部服务,例如 DNS 服务器和 HTTP 代理。如果 Docker Desktop 选择的子网与您环境中的 IP 冲突,您可以使用 Network (网络) 设置指定自定义子网。
在 Mac 上,您还可以选择 Use kernel networking for UDP (将内核网络用于 UDP) 设置。这样,您就可以为 UDP 使用更高效的内核网络路径。这可能与您的 VPN 软件不兼容。
WSL 集成
在 WSL 2 模式下的 Windows 上,您可以配置哪些 WSL 2 发行版将具有 Docker WSL 集成。
默认情况下,集成在默认 WSL 分配上启用。
要更改默认 WSL 分配,请运行 .(例如,
要将 Ubuntu 设置为默认 WSL 分发版,请运行 )。wsl --set-default <distribution name>
wsl --set-default ubuntu
您还可以选择要启用 WSL 2 集成的任何其他发行版。
有关配置 Docker Desktop 以使用 WSL 2 的更多详细信息,请参阅 Docker Desktop WSL 2 后端。
Docker 引擎
Docker Engine 选项卡允许您配置用于使用 Docker Desktop 运行容器的 Docker 守护程序。
您可以使用 JSON 配置文件配置守护程序。文件可能如下所示:
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false
}
您可以在 中找到此文件。要更改配置,请执行以下任一操作
直接从 Docker Desktop 中的仪表板编辑 JSON 配置,或打开 JSON 并
使用您最喜欢的文本编辑器编辑文件。$HOME/.docker/daemon.json
要查看可能的配置选项的完整列表,请参阅 dockerd 命令参考。
选择应用并重新启动以保存您的设置并重新启动Docker Desktop。
建设者
如果您已打开 Docker Desktop Builds 视图,则可以使用 Builders 选项卡在 Docker Desktop 设置中检查和管理生成器。
检查
要检查生成器,请找到要检查的生成器,然后选择 展开图标。您只能检查活动的构建器。
检查活动构建器会显示:
- BuildKit 版本
- 地位
- 驱动程序类型
- 支持的功能和平台
- 磁盘使用情况
- 终端节点地址
选择其他生成器
Selected builder (选定的生成器) 部分显示选定的生成器。 要选择其他构建器:
- 在 Available builders (可用生成器) 下找到要使用的生成器
- 打开生成器名称旁边的下拉菜单。
- 选择 Use (使用) 以切换到此生成器。
现在,您的构建命令默认使用选定的构建器。
创建生成器
要创建生成器,请使用 Docker CLI。请参阅创建新的生成器
删除生成器
在以下情况下,您可以删除生成器:
构建器不是您选择的构建器
构建器未与 Docker 上下文关联。
要删除与 Docker 上下文关联的构建器,请使用 命令。
docker context rm
要删除生成器:
- 在 Available builders (可用生成器) 下找到要删除的生成器
- 打开下拉菜单。
- 选择 Remove (删除) 以删除此生成器。
如果构建器使用 or 驱动程序,则
Build Cache 也会与 Builder 一起被删除。docker-container
kubernetes
停止和启动构建器
使用 docker-container
驱动程序的构建器在容器中运行 BuildKit 守护进程。
您可以使用下拉菜单启动和停止 BuildKit 容器。
如果容器已停止,则运行生成会自动启动容器。
您只能使用驱动程序启动和停止生成器。docker-container
Kubernetes (简体中文)
注意
在 Windows 上,Kubernetes 选项卡在 Windows 容器模式下不可用。
Docker Desktop 包括一个独立的 Kubernetes 服务器,因此您可以测试 在 Kubernetes 上部署 Docker 工作负载。要启用 Kubernetes 支持和 安装作为 Docker 容器运行的 Kubernetes 的独立实例, 选择 Enable Kubernetes (启用 Kubernetes)。
选择显示系统容器(高级)可在以下情况下查看内部容器 使用 Docker 命令。
选择 Reset Kubernetes cluster (重置 Kubernetes 集群) 以删除所有堆栈和 Kubernetes 资源。
有关将 Kubernetes 与 Docker Desktop 集成结合使用的更多信息, 请参阅在 Kubernetes 上部署。
软件更新
软件更新选项卡会通知您 Docker Desktop 的任何可用更新。 当有新的更新时,您可以选择立即下载更新,或者 选择 Release Notes(发行说明)选项以了解更新版本中包含的内容。
通过清除 Automatically check for updates (自动检查更新) 复选框来关闭更新检查。这将禁用 Docker 菜单中的通知和通知 徽章。要手动检查更新,请选择 Docker 菜单中的 Check for updates 选项。
要允许 Docker Desktop 在后台自动下载新更新, 选择 Always download updates(始终下载更新)。这将下载较新版本的 Docker Desktop 当更新可用时。下载更新后,选择 Apply and Restart (应用并重新启动) 以安装更新。您可以通过 Docker 菜单或 Docker Desktop Dashboard 的 Updates (更新) 部分中。
扩展
使用 Extensions (扩展) 选项卡可以:
- 启用 Docker 扩展
- 仅允许通过 Docker Marketplace 分发的扩展
- 显示 Docker Extensions 系统容器
有关 Docker 扩展的更多信息,请参阅扩展。
开发中的功能
在 Feature control (功能控制) 选项卡上,您可以控制 Beta 功能和 Experimental (实验性功能) 的设置。
您还可以从 Features in development (开发中的功能) 选项卡注册 Developer Preview 计划。
Beta 版功能
Beta 版功能提供对未来产品功能的访问权限。 这些功能仅用于测试和反馈,因为它们可能会发生变化 在两次发布之间没有警告,或者将它们从 future 中完全删除 释放。不得在生产环境中使用 Beta 功能。 Docker 不提供对 beta 功能的支持。
实验性功能
实验性功能提供了对未来产品功能的早期访问。 这些功能仅用于测试和反馈,因为它们可能会发生变化 在两次发布之间没有警告,或者可以从 future 中完全删除 释放。实验性功能不得在生产环境中使用。 Docker 不提供对实验性功能的支持。
有关 Docker CLI 中当前实验性功能的列表,请参阅 Docker CLI 实验性功能。
通知
使用 Notifications (通知) 选项卡可打开或关闭以下事件的通知:
- 任务和流程的状态更新
- Docker 公告
- Docker 调查
默认情况下,所有通知都处于打开状态。您将始终收到错误通知以及有关新 Docker Desktop 版本和更新的通知。
通知会暂时显示在 Docker Desktop 控制面板的右下角,然后移动到 Notifications drawer (通知抽屉)。要打开 Notifications drawer,请选择 。
高深
在 Mac 上,您可以在 Advanced (高级) 选项卡上重新配置初始安装设置:
选择如何配置 Docker 的 CLI 工具的安装。
- 系统:Docker CLI 工具安装在系统目录下的
/usr/local/bin
- User:Docker CLI 工具安装在 User Directory 的 下。然后,您必须添加到 PATH.要添加到您的路径中:
$HOME/.docker/bin
$HOME/.docker/bin
$HOME/.docker/bin
- 打开 shell 配置文件。如果你使用的是 bash shell,或者你使用的是 zsh shell。
~/.bashrc
~/.zshrc
- 复制并粘贴以下内容:
$ export PATH=$PATH:~/.docker/bin
- 保存并关闭文件。重新启动 shell 以将更改应用于 PATH 变量。
- 打开 shell 配置文件。如果你使用的是 bash shell,或者你使用的是 zsh shell。
- 系统:Docker CLI 工具安装在系统目录下的
启用默认 Docker 套接字 (需要密码)。创建某些第三方客户端可能用于与 Docker Desktop 通信的站点。有关更多信息,请参阅 macOS 的权限要求。
/var/run/docker.sock
启用特权端口映射 (需要密码)。启动特权帮助程序进程,该进程绑定介于 1 和 1024 之间的端口。有关更多信息,请参阅 macOS 的权限要求。
有关每个配置和使用案例的更多信息,请参阅权限要求。