更改您的Docker Desktop设置
要导航到**设置**,您可以
- 选择Docker菜单
,然后选择**设置**
- 从Docker Desktop仪表盘中选择**设置**图标。
您也可以在以下位置找到settings-store.json
文件(或Docker Desktop 4.34及更早版本中的settings.json
文件):
- Mac:
~/Library/Group\ Containers/group.com.docker/settings-store.json
- Windows:
C:\Users\[USERNAME]\AppData\Roaming\Docker\settings-store.json
- Linux:
~/.docker/desktop/settings-store.json
常规
在**常规**选项卡上,您可以配置Docker的启动时间并指定其他设置
**登录计算机时启动Docker Desktop**。选择在登录计算机时自动启动Docker Desktop。
**Docker Desktop启动时打开Docker Dashboard**。选择在启动Docker Desktop时自动打开仪表盘。
**选择Docker Desktop的主题**。选择是要将**浅色**主题还是**深色**主题应用于Docker Desktop。或者,您可以将Docker Desktop设置为**使用系统设置**。
**选择容器终端**。确定从容器打开终端时启动哪个终端。如果您选择集成终端,则可以直接从Docker Desktop仪表盘运行正在运行的容器中的命令。有关更多信息,请参阅探索容器。
**启用Docker终端**。与您的主机交互并直接从Docker Desktop执行命令。
**默认启用Docker调试**。选中此选项以在访问集成终端时默认使用Docker调试。有关更多信息,请参阅探索容器。
仅限Mac **将虚拟机包含在Time Machine备份中**。选择备份Docker Desktop虚拟机。此选项默认情况下处于关闭状态。
仅限Windows **在tcp://localhost:2375上公开守护程序,无需TLS**。选中此选项以允许旧版客户端连接到Docker守护程序。您必须谨慎使用此选项,因为在没有TLS的情况下公开守护程序可能导致远程代码执行攻击。
仅限Windows **使用基于WSL 2的引擎**。WSL 2比Hyper-V后端提供更好的性能。有关更多信息,请参阅Docker Desktop WSL 2后端。
仅限Windows **将
*.docker.internal
名称添加到主机的/etc/hosts
文件(需要密码)**。允许您从主机和容器解析*.docker.internal
DNS名称。**使用containerd拉取和存储镜像**。打开containerd镜像存储。这带来了新的功能,例如通过延迟拉取镜像来加快容器启动性能,以及能够使用Docker运行Wasm应用程序。有关更多信息,请参阅containerd镜像存储。
仅限Mac **选择虚拟机管理器 (VMM)**。选择用于创建和管理Docker Desktop Linux虚拟机的虚拟机管理器。
- 选择**Docker VMM** 以获得最新和性能最高的虚拟机管理程序/虚拟机管理器。此选项仅适用于运行macOS 12.5或更高版本的Apple Silicon Mac,目前处于Beta版。
提示
启用此设置可使Docker Desktop运行更快。
- 或者,您可以选择**Apple虚拟化框架**、**QEMU**(适用于Apple Silicon)或**HyperKit**(适用于Intel Mac)。对于macOS 12.5及更高版本,Apple虚拟化框架是默认设置。
有关更多信息,请参阅虚拟机管理器。
- 选择**Docker VMM** 以获得最新和性能最高的虚拟机管理程序/虚拟机管理器。此选项仅适用于运行macOS 12.5或更高版本的Apple Silicon Mac,目前处于Beta版。
仅限Mac **为您的容器选择文件共享实现**。选择是要使用**VirtioFS**、**gRPC FUSE**还是**osxfs(旧版)**共享文件。VirtioFS仅适用于macOS 12.5及更高版本,默认情况下处于启用状态。
提示
使用VirtioFS进行快速文件共享。VirtioFS 将完成文件系统操作所需的时间缩短了高达98%。它是Docker VMM支持的唯一文件共享实现。
仅限Mac **在Apple Silicon上使用Rosetta进行x86_64/amd64仿真**。打开Rosetta以加速Apple Silicon上的x86/AMD64二进制仿真。此选项仅在您选择**Apple虚拟化框架**作为虚拟机管理器时可用。您还必须使用macOS 13或更高版本。
**发送使用统计信息**。选择此选项,Docker Desktop将发送诊断信息、崩溃报告和使用数据。这些信息可帮助Docker改进和排除应用程序故障。清除复选框以选择退出。Docker可能会定期提示您提供更多信息。
使用增强的容器隔离。选中此选项可通过阻止容器破坏 Linux 虚拟机来增强安全性。更多信息,请参见增强的容器隔离。
注意
只有在您登录 Docker Desktop 并拥有 Docker Business 订阅的情况下,此设置才可用。
显示 CLI 提示。在 CLI 中运行 Docker 命令时显示 CLI 提示和技巧。默认情况下启用此功能。要通过 CLI 开启或关闭 CLI 提示,请分别将
DOCKER_CLI_HINTS
设置为true
或false
。SBOM 索引。启用此选项后,在 Docker Desktop 中检查镜像会显示一个开始分析按钮,选中该按钮后,将使用 Docker Scout 分析镜像。
启用后台 SBOM 索引。启用此选项后,Docker Scout 会自动分析您构建或拉取的镜像。
仅限 Mac 自动检查配置。定期检查您的配置,以确保没有其他应用程序进行意外更改。
Docker Desktop 检查您在安装期间配置的设置是否已被 Orbstack 等外部应用程序更改。Docker Desktop 检查
- Docker 二进制文件的符号链接到
/usr/local/bin
。 - 默认 Docker 套接字的符号链接。此外,Docker Desktop 确保在启动时上下文切换到
desktop-linux
。
如果发现更改,系统会通知您,您可以直接从通知中恢复配置。更多信息,请参见常见问题解答。
- Docker 二进制文件的符号链接到
资源
资源选项卡允许您配置 CPU、内存、磁盘、代理、网络和其他资源。
高级
注意
在 Windows 上,高级选项卡中的资源分配选项仅在 Hyper-V 模式下可用,因为 Windows 在 WSL 2 模式和 Windows 容器模式下管理资源。在 WSL 2 模式下,您可以配置分配给WSL 2 实用程序虚拟机的内存、CPU 和交换空间大小的限制。
在高级选项卡上,您可以限制 Docker Linux 虚拟机可用的资源。
高级设置包括:
CPU 限制。指定 Docker Desktop 可使用的最大 CPU 数量。默认情况下,Docker Desktop 设置为使用主机上可用的所有处理器。
内存限制。默认情况下,Docker Desktop 设置为使用最多 50% 的主机内存。要增加 RAM,请将其设置为更大的数字;要减少它,请降低数字。
交换空间。根据需要配置交换文件大小。默认值为 1 GB。
虚拟磁盘限制。指定磁盘映像的最大大小。
磁盘映像位置。指定存储容器和镜像的 Linux 卷的位置。
您也可以将磁盘映像移动到其他位置。如果您尝试将磁盘映像移动到已经存在磁盘映像的位置,系统会询问您是否要使用现有映像或替换它。
提示
如果您觉得 Docker Desktop 开始变慢,或者您正在运行多容器工作负载,请增加内存和磁盘映像空间分配。
资源节约器。启用或禁用资源节约器模式,该模式通过在 Docker Desktop 空闲时(即,没有容器正在运行)自动关闭 Linux 虚拟机来显著降低主机的 CPU 和内存利用率。
您还可以配置资源节约器超时,这指示 Docker Desktop 在资源节约器模式启动之前应空闲多长时间。默认为 5 分钟。
注意
容器运行时,将自动退出资源节约器模式。由于 Docker Desktop 需要重新启动 Linux 虚拟机,因此退出可能需要几秒钟(约 3 到 10 秒)。
文件共享
注意
在 Windows 上,文件共享选项卡仅在 Hyper-V 模式下可用,因为文件在 WSL 2 模式和 Windows 容器模式下会自动共享。
使用文件共享允许将您机器上的本地目录与 Linux 容器共享。这对于在主机上的 IDE 中编辑源代码并在容器中运行和测试代码特别有用。
同步的文件共享
同步文件共享是一种替代文件共享机制,它提供快速灵活的主机到虚拟机文件共享,通过使用同步文件系统缓存来增强绑定挂载性能。适用于专业版、团队版和企业版订阅。
要了解更多信息,请参见同步文件共享。
虚拟文件共享
默认情况下,共享/Users
、/Volumes
、/private
、/tmp
和/var/folders
目录。如果您的项目位于此目录之外,则必须将其添加到列表中,否则您可能会在运行时遇到挂载被拒绝
或无法启动服务
错误。
文件共享设置包括:
添加目录。选择
+
并导航到您要添加的目录。删除目录。选择您要删除的目录旁边的
-
。应用并重新启动使目录可以使用 Docker 的绑定挂载 (
-v
) 功能提供给容器。
提示
- 仅与容器共享您需要的目录。文件共享会引入开销,因为主机上文件的任何更改都需要通知 Linux 虚拟机。共享过多文件会导致高 CPU 负载和慢的文件系统性能。
- 共享文件夹旨在允许在主机上编辑应用程序代码,同时在容器中执行。对于缓存目录或数据库等非代码项,如果使用数据卷(命名卷)或数据容器将它们存储在 Linux 虚拟机中,则性能会更好。
- 如果您将整个主目录共享到容器中,MacOS 可能会提示您授予 Docker 访问主目录的个人区域(例如“提醒”或“下载”)的权限。
- 默认情况下,Mac 文件系统不区分大小写,而 Linux 区分大小写。在 Linux 上,可以创建两个单独的文件:
test
和Test
,而在 Mac 上,这些文件名实际上指的是同一个底层文件。这可能会导致应用程序在开发人员的机器上(共享文件内容的地方)正常工作,但在 Linux 生产环境中(文件内容不同的情况下)失败。为了避免这种情况,Docker Desktop 坚持所有共享文件都必须以其原始大小写访问。因此,如果创建了一个名为test
的文件,则必须将其打开为test
。尝试打开Test
将失败并显示错误“没有此类文件或目录”。同样,一旦创建了一个名为test
的文件,尝试创建第二个名为Test
的文件将失败。更多信息,请参见卷挂载需要为
/Users
以外的任何项目目录进行文件共享
按需共享文件夹
在 Windows 上,您可以按需共享文件夹,即在容器第一次使用特定文件夹时共享。
如果您从具有卷挂载的 shell(如下例所示)运行 Docker 命令,或者启动包含卷挂载的 Compose 文件,则会弹出一个窗口询问您是否要共享指定的文件夹。
您可以选择共享,在这种情况下,它将添加到您的 Docker Desktop 共享文件夹列表中,并可供容器使用。或者,您可以选择不共享它,方法是选择取消。


代理
Docker Desktop 支持使用 HTTP/HTTPS 和SOCKS5 代理。
在以下情况下可以使用 HTTP/HTTPS 代理:
- 登录 Docker
- 拉取或推送镜像
- 在镜像构建期间获取构件
- 容器与外部网络交互
- 扫描镜像
如果主机使用 HTTP/HTTPS 代理配置(静态或通过代理自动配置 (PAC)),Docker Desktop 将读取此配置并自动使用这些设置登录 Docker、拉取和推送镜像以及进行容器互联网访问。如果代理需要授权,则 Docker Desktop 会动态地向开发人员询问用户名和密码。所有密码都安全地存储在操作系统凭据存储中。请注意,只支持Basic
代理身份验证方法,因此我们建议您为 HTTP/HTTPS 代理使用https://
URL,以保护网络传输中的密码。Docker Desktop 在与代理通信时支持 TLS 1.3。
要为 Docker Desktop 设置不同的代理,请打开手动代理配置并输入格式为http://proxy:port
或https://proxy:port
的单个上游代理 URL。
要防止开发人员意外更改代理设置,请参见设置管理。
用于扫描镜像的 HTTPS 代理设置使用HTTPS_PROXY
环境变量设置。
注意
如果您使用的是托管在 Web 服务器上的 PAC 文件,请确保为服务器或网站上的
.pac
文件扩展名添加 MIME 类型application/x-ns-proxy-autoconfig
。如果没有此配置,PAC 文件可能无法正确解析。
重要
您无法使用Docker守护程序配置文件(`daemon.json`)配置代理设置,我们建议您不要通过Docker CLI配置文件(`config.json`)配置代理设置。
要管理Docker Desktop的代理配置,请在Docker Desktop应用程序中配置设置或使用设置管理。
代理身份验证
基本身份验证
如果您的代理使用基本身份验证,Docker Desktop会提示开发者输入用户名和密码,并缓存凭据。所有密码都安全地存储在操作系统凭据存储中。如果该缓存被删除,它将请求重新身份验证。
建议您对HTTP/HTTPS代理使用`https://` URL,以保护网络传输过程中的密码。Docker Desktop还支持与代理通信的TLS 1.3。
Kerberos和NTLM身份验证
注意
适用于使用Docker Desktop for Windows 4.30及更高版本的Docker Business订阅者。
开发者不再会被代理凭据提示打断,因为身份验证已集中化。这还降低了由于登录尝试错误导致帐户锁定的风险。
如果您的代理在407(需要代理身份验证)响应中提供多种身份验证方案,Docker Desktop默认选择基本身份验证方案。
对于Docker Desktop 4.30到4.31版本
要启用Kerberos或NTLM代理身份验证,除了指定代理IP地址和端口外,无需其他配置。
对于Docker Desktop 4.32及更高版本
要启用Kerberos或NTLM代理身份验证,您必须在通过命令行安装期间传递`--proxy-enable-kerberosntlm`安装程序标志,并确保您的代理服务器已正确配置为Kerberos或NTLM身份验证。
网络
注意
在Windows中,由于Windows管理网络,因此在Windows容器模式下“网络”选项卡不可用。
Docker Desktop使用私有IPv4网络用于内部服务,例如DNS服务器和HTTP代理。如果Docker Desktop选择的子网与您环境中的IP冲突,您可以使用“网络”设置指定自定义子网。
在Mac上,您还可以选择“使用内核网络进行UDP”设置。这使您可以为UDP使用更高效的内核网络路径。这可能与您的VPN软件不兼容。
WSL集成
在WSL 2模式下的Windows上,您可以配置哪些WSL 2发行版将具有Docker WSL集成。
默认情况下,您的默认WSL发行版上启用了集成。要更改您的默认WSL发行版,请运行`wsl --set-default <发行版名称>`。(例如,要将Ubuntu设置为您的默认WSL发行版,请运行`wsl --set-default ubuntu`)。
您还可以选择任何其他希望启用WSL 2集成的发行版。
有关将Docker Desktop配置为使用WSL 2的更多详细信息,请参阅Docker Desktop WSL 2后端。
Docker Engine
“Docker Engine”选项卡允许您配置用于使用Docker Desktop运行容器的Docker守护程序。
您可以使用JSON配置文件配置守护程序。以下是该文件可能的样子
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false
}
您可以在`$HOME/.docker/daemon.json`找到此文件。要更改配置,请直接从Docker Desktop中的仪表板编辑JSON配置,或使用您喜欢的文本编辑器打开和编辑该文件。
要查看可能的完整配置选项列表,请参阅dockerd命令参考。
选择“应用并重新启动”以保存您的设置并重新启动Docker Desktop。
构建器
如果您已启用Docker Desktop构建视图,则可以使用“构建器”选项卡检查和管理Docker Desktop设置中的构建器。
检查
要检查构建器,请找到要检查的构建器并选择展开图标。您只能检查活动构建器。
检查活动构建器将显示
- BuildKit版本
- 状态
- 驱动程序类型
- 支持的功能和平台
- 磁盘使用情况
- 端点地址
选择不同的构建器
“所选构建器”部分显示所选构建器。要选择不同的构建器
- 在“可用构建器”下找到要使用的构建器
- 打开构建器名称旁边的下拉菜单。
- 选择“使用”以切换到此构建器。
您的构建命令现在默认使用所选构建器。
创建构建器
要创建构建器,请使用Docker CLI。请参阅创建新的构建器
删除构建器
您可以删除构建器,如果
构建器不是您的所选构建器
构建器未与Docker上下文关联。
要删除与Docker上下文关联的构建器,请使用`docker context rm`命令删除上下文。
要删除构建器
- 在“可用构建器”下找到要删除的构建器
- 打开下拉菜单。
- 选择“删除”以删除此构建器。
如果构建器使用`docker-container`或`kubernetes`驱动程序,则构建缓存也将与构建器一起删除。
停止和启动构建器
使用`docker-container`驱动程序的构建器在容器中运行BuildKit守护程序。您可以使用下拉菜单启动和停止BuildKit容器。
运行构建将在停止容器时自动启动容器。
您只能启动和停止使用`docker-container`驱动程序的构建器。
Kubernetes
注意
在Windows中,“Kubernetes”选项卡在Windows容器模式下不可用。
Docker Desktop包含一个独立的Kubernetes服务器,因此您可以测试在Kubernetes上部署Docker工作负载。要启用Kubernetes支持并安装作为Docker容器运行的独立Kubernetes实例,请选择“启用Kubernetes”。
使用Docker命令时,选择“显示系统容器(高级)”以查看内部容器。
选择“重置Kubernetes集群”以删除所有堆栈和Kubernetes资源。
有关将Kubernetes集成与Docker Desktop一起使用的更多信息,请参阅在Kubernetes上部署。
软件更新
“软件更新”选项卡会通知您Docker Desktop可用的任何更新。如果有新更新,您可以选择立即下载更新,或者选择“发行说明”选项以了解更新版本中包含的内容。
清除“自动检查更新”复选框以关闭更新检查。这将禁用Docker菜单中的通知和Docker Desktop仪表板中显示的通知徽章。要手动检查更新,请在Docker菜单中选择“检查更新”选项。
要允许Docker Desktop在后台自动下载新更新,请选择“始终下载更新”。这将在更新可用时下载较新版本的Docker Desktop。下载更新后,选择“应用并重新启动”以安装更新。您可以通过Docker菜单或Docker Desktop仪表板中的“更新”部分执行此操作。
扩展
使用“扩展”选项卡
- 启用Docker扩展
- 仅允许通过Docker Marketplace分发的扩展
- 显示Docker扩展系统容器
有关Docker扩展的更多信息,请参阅扩展。
开发中的功能
在“功能控制”选项卡上,您可以控制您的“Beta版功能”和“实验性功能”设置。
您还可以注册开发者预览计划,从“开发中的功能”选项卡。
Beta功能
Beta版功能提供对未来产品功能的访问。这些功能仅供测试和反馈,因为它们可能会在版本之间发生更改,恕不另行通知,或者完全从未来的版本中删除。Beta版功能不得用于生产环境。Docker不提供对Beta版功能的支持。
实验性功能
实验性功能提供对未来产品功能的早期访问。这些功能仅供测试和反馈,因为它们可能会在版本之间发生更改,恕不另行通知,或者可能完全从未来的版本中删除。实验性功能不得用于生产环境。Docker不提供对实验性功能的支持。
有关Docker CLI中当前实验性功能的列表,请参阅Docker CLI实验性功能。
通知
使用“通知”选项卡打开或关闭以下事件的通知
- 任务和流程的状态更新
- Docker公告
- Docker调查
默认情况下,所有通知都已打开。您将始终收到有关新Docker Desktop版本和更新的错误通知和通知。
通知暂时显示在Docker Desktop仪表板的右下方,然后移动到“通知”抽屉。要打开“通知”抽屉,请选择 。
高级
在Mac上,您可以在**高级**选项卡中重新配置初始安装设置
选择如何配置Docker CLI工具的安装方式.
- **系统:** Docker CLI工具安装在系统目录下的
/usr/local/bin
- **用户:** Docker CLI工具安装在用户目录下的
$HOME/.docker/bin
。然后,您必须将$HOME/.docker/bin
添加到您的PATH环境变量中。要将$HOME/.docker/bin
添加到您的PATH:- 打开您的shell配置文件。如果您使用的是bash shell,则为
~/.bashrc
;如果您使用的是zsh shell,则为~/.zshrc
。 - 复制并粘贴以下内容:
$ export PATH=$PATH:~/.docker/bin
- 保存并关闭文件。重新启动您的shell以将更改应用于PATH环境变量。
- 打开您的shell配置文件。如果您使用的是bash shell,则为
- **系统:** Docker CLI工具安装在系统目录下的
**启用默认Docker套接字(需要密码)**。创建
/var/run/docker.sock
,某些第三方客户端可能使用它与Docker Desktop通信。更多信息,请参见macOS权限要求。**启用特权端口映射(需要密码)**。启动特权辅助进程,该进程绑定1到1024之间的端口。更多信息,请参见macOS权限要求。
有关每种配置和用例的更多信息,请参见权限要求。