Docker Desktop 发布说明

目录

本页面包含有关Docker Desktop版本中的新功能、改进、已知问题和错误修复的信息。有关Docker Desktop版本的常见问题,请参阅 常见问题解答

Docker Desktop 版本如果距离最新发布超过6个月,则无法下载。之前的发布说明可以在我们的 文档仓库中找到。

看看 Docker 公共路线图 看看接下来会发生什么。

4.37.1

2024-12-17

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) | Mac with Apple chip (校验和) | Mac with Intel chip (校验和) | Debian - RPM - Arch (校验和)

Bug修复和增强

适用于所有平台

  • 修复了导致Docker Hub中的AI目录在Docker Desktop中不可用的问题。
  • 修复了一个在使用增强容器隔离时导致Docker Desktop出现index out of range [0] with length 0错误的问题。

4.37.0

2024-12-12

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) | Mac with Apple chip (校验和) | Mac with Intel chip (校验和) | Debian - RPM - Arch (校验和)

  • 您现在可以直接从命令行(Beta)执行关键操作,如启动、停止、重启和检查Docker Desktop的状态。
  • Docker Hub 中的 AI 目录可以直接通过 Docker Desktop 使用。

升级

Bug fixes and enhancements

适用于所有平台

  • 新安装的Docker Engine的默认磁盘使用限制现在为1TB。
  • 修复了容器无法建立回环AF_VSOCK连接的问题。
  • 修复了一个错误,即重置默认设置也会重置CLI上下文。
  • 修复了一个错误,即在资源节省模式下(仅限使用WSL2后端的Windows)重启引擎或切换引擎(macOS)后,Docker Desktop Dashboard 会与 Docker 守护进程不同步的问题。
  • 修复了在资源节省模式下重启引擎后无法重新启用资源节省模式的错误。

对于Mac

  • 修复了一个在运行卸载程序二进制文件两次时使用sudo会以root权限创建某些用户目录的错误。

对于Windows

  • 添加了对使用WSL 2版本2.3.24及更高版本的Windows on ARM的支持,以在WSL 2上实现单一分发模式。
  • 修复了Docker Desktop无法启动的问题。修复了 docker/for-win#14453

已知问题

  • 如果启用了Registry Access Manager,Kubernetes集群可能无法启动。作为解决方法,将registry.k8s.io-docker.pkg.dev添加到Registry Access Management策略中。

弃用

For Mac

  • QEMU(传统)作为Apple Silicon上的VMM将在未来的版本中被移除。建议您切换到Apple虚拟化框架以提高性能和稳定性。如果您遇到问题, 联系Docker支持提交GitHub问题
  • osxfs(旧版)将在未来的版本中被移除。建议您切换到VirtioFS以提高性能。如果您遇到问题, 联系Docker支持提交GitHub问题

4.36.0

2024-11-18

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) | Mac with Apple chip (校验和) | Mac with Intel chip (校验和) | Debian - RPM - Arch (校验和)

  • 现有的在Windows上使用WSL2引擎的Docker Desktop安装现在会自动迁移到统一的单一分发架构,以提高一致性和性能。
  • 管理员现在可以:
    • 使用macOS 配置配置文件(早期访问)强制登录。
    • 同时为多个组织强制登录(早期访问)。
    • 使用 PKG安装程序(早期访问)批量部署Docker Desktop for Mac。
    • 使用桌面设置管理通过admin.docker.com管理和强制执行默认设置(早期访问)。
  • 增强容器隔离(ECI)已改进为:

升级

Bug修复和增强

适用于所有平台

  • 修复了docker events命令在流式传输事件后不会终止的错误。
  • Docker Init: 改进了不使用Docker Compose的PHP应用程序的Dockerfile缓存。
  • 同步文件共享现在尊重admin-settings.json中的filesharingAllowedDirectories设置。
  • 修复了一个问题,即如果Docker Desktop配置为使用代理,由于在获取认证令牌时内部超时,导致无法启动。
  • 添加了一个恢复横幅,以便在下载失败时重试更新。
  • 修复了当umask设置为577时会导致rpmbuild失败的问题。修复了 docker/for-mac#6511.
  • 修复了一个限制使用--network=host的容器只能打开18个主机端口的错误。
  • 修复了非根容器的绑定挂载所有权问题。修复了 docker/for-mac#6243.
  • Docker Desktop 在手动暂停后不会自动恢复。系统将保持暂停状态,直到您手动恢复 Docker 引擎。这修复了一个错误,即其他软件可能会通过在后台运行 CLI 命令意外触发恢复。修复了 for-mac/#6908

对于Mac

  • 修复了Docker VMM中的一个错误,该错误阻止了MySQL和其他数据库容器的启动。修复了来自docker/for-mac#7464的报告。
  • Docker VMM 的最低内存要求现在会自动调整,从而改善用户体验并解决来自 docker/for-mac#7464, docker/for-mac#7482.
  • 修复了一个高级选项允许特权端口映射未按预期工作的问题。修复了 docker/for-mac#7460.
  • Docker Desktop 现在可以在安装向导和设置屏幕中自动为 zsh、bash 和 fish 配置 shell 补全脚本。
  • 修复了一个错误,该错误导致如果Docker Desktop由非管理员用户安装或当前用户之前是管理员时,应用内更新会失败。修复了 for-mac/#7403for-mac/#6920

对于Windows

  • 修复了一个阻止绑定UDP端口53的错误。
  • 修复了Windows守护程序选项在启动时被覆盖的错误。

4.35.1

2024-10-30

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) | Mac with Apple chip (校验和) | Mac with Intel chip (校验和) | Debian - RPM - Arch (校验和)

适用于所有平台

4.35.0

2024-10-24

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) | Mac with Apple chip (校验和) | Mac with Intel chip (校验和) | Debian - RPM - Arch (校验和)

  • 支持 在Red Hat Enterprise Linux上的Docker Desktop 现已全面可用。
  • 卷备份和共享现已全面推出,可以在视图中找到。
  • Docker Desktop 中使用系统 shell 的终端支持现已全面可用。
  • Docker VMM 的 Beta 版本发布 - 这是 macOS 上 Apple Virtualization Framework 的更高效替代方案(需要 Apple Silicon 和 macOS 12.5 或更高版本)。

升级

错误修复和增强功能

适用于所有平台

  • 修复了daemon.json中的代理设置会覆盖Docker Desktop设置中的代理的错误。
  • 修复了某些Docker子网范围无法使用的错误。
  • 已移除 docker-index 因为它现在已被弃用,你可以使用 docker scout cves fs:// 代替。
  • 修复了一个无法通过标签对图像进行排序或过滤的错误。修复了 docker/for-win#14297.
  • 修复了一个错误,当registry.json文件格式不正确时,docker CLI 无法按预期工作。
  • 修复了在镜像视图中推送到Docker Hub操作会导致invalid tag format错误的bug。修复了 docker/for-win#14258.
  • 修复了当ICMPv6设置不成功时Docker Desktop启动失败的问题。
  • 添加了允许USB/IP工作的驱动程序。
  • 修复了增强容器隔离(ECI)中的一个错误 派生镜像的Docker套接字挂载权限,当Docker Desktop使用containerd镜像存储时,错误地拒绝了一些镜像的Docker套接字挂载。
  • 启用 NFT_NUMGENNFT_FIB_IPV4NFT_FIB_IPV6 内核模块。
  • 构建用户界面:
    • 已完成构建列表中突出显示构建检查警告。
    • 改进构建时间图表的可视化效果。
    • 信息选项卡下的构建结果部分添加了图像标签。
  • 提高了在Mac和Linux上新安装时主机端磁盘利用率的效率。
  • 修复了一个错误,该错误导致在令牌过期时无法触发登录强制弹出窗口。
  • 修复了一个在使用强制登录后,容器不会立即在GUI中显示的bug。
  • settings.json 已重命名为 settings-store.json
  • 主机网络功能不再要求用户登录即可使用。

对于 Mac

  • 修复了一个错误,即在设置中更改文件共享类型后,自动启动容器可能会配置错误。
  • 修复了一个导致~/.docker/cli-plugins在启动时未被填充的错误。
  • 修复了一个阻止php composer或postgres以非root用户启动的错误。修复了 docker/for-mac#7415.
  • 修复了一个可能导致主机上文件更改显示截断的错误。修复了 docker/for-mac#7438.

对于Windows

  • Windows 版 Docker Desktop 的新安装现在需要 Windows 版本为 19045 或更高版本。
  • 修复了在WSL中如果在内核配置或内核命令行中禁用IPv6导致启动失败的问题。修复了 docker/for-win#14240
  • 修复了Windows上的清理/清除数据按钮。修复了 docker/for-win#12650.
  • 磁盘使用统计现在显示在仪表板页脚的安装中。
  • 改进了WSL分发问题的恢复功能。

对于Linux

  • Docker Desktop 现在支持 Ubuntu 24.04。

已知问题

对于Mac

  • 自版本4.34.0以来,高级设置中的“允许特权端口映射”切换不起作用。有关更多信息,请参见 docker/for-mac#7460.

对于Windows

  • 使用4.14.0及更早版本的用户在使用应用内更新时可能会遇到问题。要更新到最新版本,请从本页面下载并安装最新的Docker Desktop。

4.34.3

2024-10-09

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) | Mac with Apple chip (校验和) | Mac with Intel chip (校验和) | Debian - RPM - Arch (校验和)

升级

安全

4.34.2

2024-09-12

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) | Mac with Apple chip (校验和) | Mac with Intel chip (校验和) | Debian - RPM - Arch (校验和)

Bug修复和增强功能

适用于所有平台

  • 修复了在资源节省模式下docker compose up会变得无响应的错误。

安全

  • 修复了 CVE-2024-8695 该漏洞允许通过精心构造的扩展描述/变更日志进行远程代码执行(RCE),可能被恶意扩展滥用。
  • 修复了 CVE-2024-8696 该漏洞允许通过精心构造的扩展发布者URL/附加URL进行远程代码执行(RCE),可能被恶意扩展滥用。

4.34.1

2024-09-05

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) |

Bug修复和增强

对于Windows

  • 修复了一个错误,即Docker Desktop在启动时(通常在首次启动时)错误地认为应用程序的另一个实例正在运行而无法启动。( docker/for-win#14294docker/for-win#14034).

4.34.0

2024-08-29

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) | Mac with Apple chip (校验和) | Mac with Intel chip (校验和) | Debian - RPM - Arch (校验和)

  • 主机网络 支持在 Docker Desktop 上现已全面可用。
  • 如果您通过CLI进行身份验证,您现在可以通过基于浏览器的流程进行身份验证,从而无需手动生成PAT。
  • Windows 现在支持在 WSL2 安装的 Docker Desktop 中自动回收磁盘空间 使用托管虚拟硬盘
  • 通过MSI安装程序部署Docker Desktop现已普遍可用。
  • 现在普遍提供了两种新的方法来 强制登录(Windows注册表键和.plist文件)。
  • Docker Desktop 的新安装现在默认使用 containerd 镜像存储。
  • Compose Bridge (实验性) 现在可以从 Compose 文件查看器中获取。轻松转换并将您的 Compose 项目部署到 Kubernetes 集群。

升级

Bug fixes and enhancements

适用于所有平台

  • 修复了一个错误,该错误导致在启动带有自动移除(--rm)的容器时,CLI 会变得空闲,但 Docker Desktop 在启动时会拒绝其端口绑定。
  • 修复了在支持屏幕上诊断收集偶尔会失败的bug。
  • 修复了在容器的文件标签中文件夹无法展开的错误。修复了 docker/for-win#14204.
  • 应用内更新现在遵循代理设置。
  • 扩展了ECI Docker套接字挂载权限功能,可选地应用于从允许的镜像派生的子镜像。这使得ECI能够与创建使用Docker套接字挂载的临时本地镜像的构建包(例如,Paketo)一起工作。
  • 修复了一个在使用某些代理设置时导致容器视图闪烁的错误。修复了 docker/for-win#13972
  • 改进了docker image list的输出,以显示与多平台相关的镜像信息。

对于Mac

  • 修复了在触发配置完整性检查功能时偶尔会出现Partial repair error的错误。
  • 配置完整性检查功能现在显示有关Docker套接字配置错误的原因信息。
  • 修复了一个问题,即如果Docker Desktop以User身份安装,配置完整性检查功能会报告系统路径而不是用户路径。
  • 修复了一个错误,该错误导致应用程序尝试从绑定挂载的卷中读取扩展属性时可能会遇到失败。修复了 docker/for-mac#7377.

适用于Windows

已知问题

  • 当你在实验性设置选项卡中启用Compose Bridge时,它不会自动工作。你需要等待几分钟,直到收到通知,提示你必须“修复”Docker Desktop,然后才会安装compose-bridge二进制文件。
  • 在Compose文件查看器中,即使Kubernetes正在运行并且Compose Bridge已启用,转换和部署按钮也可能被禁用。解决此问题的方法是在实验性设置选项卡中禁用Compose Bridge,使用应用并重启应用更改,然后重新启用并再次选择应用并重启
  • There is a known issue when authenticating against a registry in the Docker CLI (docker login [registry address]) where, if the provided registry address includes a repository/image name (such as docker login index.docker.io/docker/welcome-to-docker), the repository part (docker/welcome-to-docker) is not normalized and results in credentials being stored incorrectly, which causes subsequent pulls from the registry (docker pull index.docker.io/docker/welcome-to-docker) to not be authenticated. To prevent this, don't include any extraneous suffix in the registry address when running docker login.

    注意

    使用docker login时,包含URL路径段的地址不是一个文档化的用例,并且被认为是不受支持的。推荐的用法是仅指定注册表主机名,并可选地指定端口,作为docker login的地址。

  • 当运行docker compose up且Docker Desktop处于资源节省模式时,命令无响应。作为解决方法,手动退出资源节省模式,Docker Compose将再次响应。
  • 当启用 增强容器隔离(ECI) 时,Docker Desktop 可能不会进入资源节省模式。这将在未来的 Docker Desktop 版本中修复。
  • 新的 ECI 派生镜像的 Docker socket 挂载权限 功能在 Docker Desktop 配置为 使用 containerd 拉取和存储镜像 时尚未生效。这将在下一个 Docker Desktop 版本中修复。

4.33.1

2024-07-31

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) |

Bug修复和增强功能

适用于Windows

  • 增加了对WSL2 2.3.11及以上版本的支持,其中包括可加载内核模块。修复了 docker/for-win#14222

4.33.0

2024-07-25

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) | Mac with Apple chip (校验和) | Mac with Intel chip (校验和) | Debian - RPM - Arch (校验和)

  • Docker 调试 现已全面可用。
  • BuildKit 现在评估 Dockerfile 规则,以告知您潜在的问题。
  • 资源分配 设置现在可以直接从仪表板页脚显示的资源使用数据中访问。
  • 全新和改进的 故障排除体验。

升级

错误修复和增强功能

适用于所有平台

  • 修复了一个问题,该问题导致使用--net=host启动并监听IPv6地址的容器可以从主机访问。
  • 设置选项卡中改进了启用containerd镜像存储的用户体验。
  • 修复了在使用grpcfuse文件共享选项时,在高负载下出现的死锁问题。
  • 修复了一个Mac特定的管理员设置影响其他平台的错误。
  • 现在可以在 Docker Engine 的 default-address-pools 中指定 IPv6 地址块。
  • 修复了Docker Engine的bipfixed-cidrfixed-cidr-v6验证问题。修复了 docker/for-mac#7104
  • Docker Engine的default-network-opts参数现在已正确验证。
  • VirtioFS性能改进包括增加目录缓存超时时间、处理来自主机的变更通知、移除安全能力属性的额外FUSE操作、优化主机事件检测,并提供API以在容器终止后清理缓存。
  • Docker Desktop 现在会在主机网络容器中出现端口冲突时发出通知。
  • Compose Bridge 命令行选项现在可以通过实验性功能使用。启用后,运行 compose-bridge 将您的 Compose 配置转换为 Kubernetes 资源。
  • 构建视图:
    • 在构建详情的Source标签中添加了 构建检查
    • 在构建详情的Info标签下的Source details部分添加了构建标签。
    • 新导入的构建现在会被高亮显示。
    • 改进了错误消息处理的性能。
    • 修复了与构建器的连接问题,该问题导致构建记录无法显示。
    • 修复了通过CLI打开构建时的导航问题。

For Mac

  • 配置完整性检查功能现在提供了更多关于您的Docker Desktop配置更改的上下文信息。有关更多信息,请参阅 常见问题解答
  • 配置完整性检查功能在无法修复Docker Desktop时显示错误。
  • 修复了IPv6 TCP设置为host.docker.internal的bug。修复了 docker/for-mac#7332
  • 修复了docker-compose符号链接指向空位置的问题。修复了 docker/for-mac#7345.

对于Linux

  • 修复了在卸载后某些wincred值仍然保留的问题。由Javier Yong报告 @Javiery3889.
  • 修复了通知另一个应用程序更改了您的桌面配置被错误触发的问题。

安全

适用于所有平台

  • 包括修复了Docker Engine中的AuthZ插件绕过回归问题。有关更多信息,请参阅 CVE-2024-41110.

适用于Windows

  • 修复了在卸载后某些wincred值仍然保留的问题。由Javier Yong报告 @Javiery3889.

已知问题

适用于Windows

  • Docker Desktop 在 WSL 预发布版本 v2.3.11.0v2.3.12.0 上无法启动,这些版本包含在 Windows 11 Insider 中。要解决此问题,请确保安装了 WSL v2.2.4.0。 有关更多信息,请参阅 microsoft/WSL#11794。此问题影响 Docker Desktop 4.33.0 及更早版本。

4.32.0

2024-07-04

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) | Mac with Apple chip (校验和) | Mac with Intel chip (校验和) | Debian - RPM - Arch (校验和)

  • Docker Engine 和 CLI 已更新至版本 27.0。
  • Docker Desktop 现在支持在 macOS 和 Windows 上使用 WSL2 后端将数据移动到不同的驱动器。请参阅 docker/for-win#13384.
  • 您现在可以在选项卡(Beta)中安排卷导出的备份
  • 直接从Docker Desktop访问终端shell(Beta版)。

升级

错误修复和增强功能

适用于所有平台

  • 改进了Compose文件查看器中watch的说明
  • 增加了对在Docker Init中没有依赖项的Golang项目的支持。解决了 docker/roadmap#611
  • 设置管理 现在允许管理员将默认值设置为 ProxyEnableKerberosNTLM
  • 移除了对旧版本Visual Studio Code的临时兼容性修复。
  • 构建视图:
    • 将导入的构建记录的图标更改为“文件”图标。
    • 改进了尝试连接到已连接的Docker Build Cloud构建器时的错误消息。
    • 修复了构建记录意外消失的问题。
    • 修复了阻止用户重新打开导入的构建的问题。
    • 修复了当构建状态从运行更改为完成时未显示构建详细信息的问题。
    • 修复了构建详细信息中格式错误的构建源链接。
    • 修复了命名上下文中缺少的构建统计信息。
    • 修复了构建结果中不再显示的图像索引/清单。
    • 修复了从UI导出的构建跟踪在导入到Jaeger时显示为单个扁平列表的问题。
    • 修复了构建详细信息中被截断的摘要/sha。
    • 修复了活动构建的最终状态动画。

对于Windows

  • 修复了WSL 2引擎上的一个问题,即如果用户手动移动了docker-desktop-data分发版,Docker Desktop将无法检测到其存在。
  • Windows on ARM 安装程序和 特权服务 现在已为 ARM64 构建。

对于Mac

  • 重新添加了CONFIG_DM_CRYPT内核模块。
  • 重新添加了CONFIG_PSI内核模块。
  • 重新添加了CONFIG_GTP内核模块。
  • 重新添加了CONFIG_NFT_BRIDGE_META内核模块。
  • 修复了一个回归问题,即当/var/run/docker.socket指向意外路径时,会出现另一个应用程序更改了您的桌面配置警告信息。
  • 将配置检查菜单条目和横幅更改为通知。
  • 提高了绑定挂载上读写操作的性能。
  • 修复了一些AMD64 Java镜像的致命错误。修复了 docker/for-mac/7286docker/for-mac/7006
  • 修复了导致Docker Desktop在从/Applications安装时删除Docker.app的问题。
  • 修复了导致绑定挂载失败的问题。修复了 docker/for-mac#7274.

已知问题

适用于所有平台

  • 对于所有选择访问实验性功能的用户,使用Compose管理同步文件共享设置将自动启用。这会将所有绑定挂载转换为同步文件共享。要禁用此行为,请取消选择访问实验性功能。然后,手动删除任何文件共享,方法是转到资源中的文件共享选项卡,导航到同步文件共享部分,选择要删除的文件共享,然后选择删除

对于Mac

  • 更新后运行docker-compose时,会返回command not found。作为解决方法,您可以创建以下符号链接:sudo ln -sf /Applications/Docker.app/Contents/Resources/cli-plugins/docker-compose /usr/local/bin/docker-compose

4.31.1

2024-06-10

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) |

Bug fixes and enhancements

适用于Windows

  • 修复了一个错误,该错误导致更新前创建的容器、镜像和卷可能对用户不可见。修复了 docker/for-win#14118.

4.31.0

2024-06-06

下载 Docker Desktop

Windows (校验和) | Windows ARM Beta (校验和) | Mac with Apple chip (校验和) | Mac with Intel chip (校验和) | Debian - RPM - Arch (校验和)

  • Air-Gapped Containers 现已全面可用。
  • Docker Compose 文件查看器显示您的 Compose YAML,带有语法高亮和相关文档的上下文链接(测试版,逐步推出)。
  • 新的侧边栏用户体验。

升级

Bug修复和增强

适用于所有平台

  • 当更新已下载时,较新的版本现在会显示在软件更新设置选项卡中。
  • settings.json中添加了proxyEnableKerberosNTLM配置,以便在Kerberos/NTLM环境未正确设置时启用基本代理身份验证的回退。
  • 修复了在启用增强容器隔离时,Docker Debug 无法正常工作的错误。
  • 修复了UDP响应未正确截断的错误。
  • 修复了在使用设置管理更新屏幕被隐藏的错误。
  • 修复了在启动时未正确应用在admin-settings.json中定义的代理设置的错误。
  • 修复了一个错误,其中使用Compose管理同步文件共享切换按钮未能正确反映该功能的值。
  • 修复了一个bug,当在macOS和Windows(使用Hyper-V)上使用gRPC FUSE文件共享时,主机上修改的绑定挂载文件在容器重启后未更新的问题。修复了 docker/for-mac#7274, docker/for-win#14060.
  • 构建视图:
    • 新增 导入构建功能,允许您导入其他人构建的构建记录,或 CI环境中的构建
    • 修复了失败构建结果中缺少OpenTelemetry跟踪的问题。
    • 修复了default-load显示为容器驱动程序的无效驱动选项的问题。
    • 修复了构建详情的深层链接。

适用于Windows

  • --allowed-org安装程序标志更改为写入策略注册表键,而不是写入registry.json

适用于Mac

  • 将设置自动检查配置高级设置移至常规设置。
  • 通过实现更长的属性超时和失效,改进了VirtioFS缓存。

对于Linux

  • 向虚拟机添加了Linux头文件,以简化自定义内核模块的编译。

安全

适用于所有平台

  • 修复了增强容器隔离(ECI)模式中的一个安全漏洞,该漏洞允许用户创建源自Docker Desktop虚拟机内受限制目录的Docker卷,并将其挂载到容器中,从而使容器能够访问这些受限制的虚拟机目录。
  • 默认情况下,只有市场列出的扩展才能在 Docker Desktop 中安装。这可以在 Docker Desktop 的设置中更改。扩展开发者需要更改此选项以测试他们的扩展。

适用于Windows

  • 修复了 CVE-2024-5652,其中docker-users组中的用户可以通过Windows容器模式中的exec-path Docker守护程序配置选项导致Windows拒绝服务。此漏洞由Hashim Jawad ( @ihack4falafel)与趋势科技零日计划合作发现。

弃用

适用于所有平台

  • 以前作为com.docker.cli分发的CLI二进制文件现在简单地作为docker分发。此版本仍将CLI二进制文件保留为com.docker.cli,但将在下一个版本中移除。

对于Windows

  • 从WSL2引擎中移除了对旧版本包的支持。

已知问题

适用于Windows

  • 当升级到Docker Desktop 4.31.0时,对于在仅使用WSL的Windows主机上使用Docker Desktop 4.8.0或更低版本创建这些容器和镜像的用户,现有的容器、镜像和卷将变得不可见。数据并未丢失,只是对Docker Desktop 4.31.0不可见。如果受到影响,请降级到4.30或更早版本。更多信息请参见: docker/for-win#14118.

对于Linux

  • Ubuntu 24.04 LTS 目前还不受支持,Docker Desktop 将无法启动。由于最新 Ubuntu 版本限制了非特权命名空间的方式,sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0 需要至少运行一次。请参考 Ubuntu 博客

4.30.0

2024-05-06

适用于所有平台

  • Docker Desktop 现在支持 SOCKS5 代理。需要商业订阅。
  • 设置管理中添加了一个新设置来管理入职调查。

对于Windows

升级

Bug fixes and enhancements

适用于所有平台

  • 在无根容器中运行docker build命令时,改进了增强容器隔离(ECI)安全性。
  • 修复了一个bug,当Docker Desktop进入/退出资源节省模式时,docker events会以Unexpected EOF退出。
  • 修复了在Docker Desktop处于资源节省模式时,docker stats --no-stream挂起的错误。
  • 修复了自诊断CLI中的一个错误,该错误错误地显示VM未启动。修复了 docker/for-mac#7241.
  • 修复了一个高吞吐量端口转发传输可能停滞的错误。修复了 docker/for-mac#7207.
  • 修复了在移除CLI应用程序时未移除CLI插件符号链接的问题。
  • 修复了共享端口抽屉中的一个错误,以显示本地引擎的正确消息。
  • 开发环境正在逐步淘汰,并已移至开发中的功能中的Beta标签。
  • 构建视图:
    • 改进了构建记录的批量删除功能。
    • 添加了操作以在构建依赖项中打开容器镜像和Git源的相关网页。
    • 添加了操作以下载Jaeger或OTLP格式的Provenance和OpenTelemetry跟踪。
    • 修复了远程构建调用的源详细信息。
    • 修复了使用云构建器时多平台构建显示为单独记录的错误。

适用于Mac

  • 修复了在2019年后的Mac上使用虚拟化框架时触发的分段错误问题。参见 docker/for-mac#6824.
  • 启用了CONFIG_SECURITY=y内核配置,例如用于 Tetragon。修复了 docker/for-mac#7250
  • 重新添加了对SQUASHFS压缩的支持。修复了 docker/for-mac#7260.
  • 修复了一个导致新版本的Docker Desktop被标记为损坏的错误。
  • 在Apple Silicon上使用qemu时增加了网络MTU。
  • 修复了一个错误,该错误在未安装Rosetta时阻止Docker Desktop启动。修复了 docker/for-mac#7243.

适用于Windows

  • 为WSL2添加了简化的配置模式,避免了需要辅助的docker-desktop-data WSL发行版(实验性)。
  • 修复了在WSL环境中Docker CLI的bash自动补全功能。
  • 修复了Docker Desktop 4.28中的一个回归问题,该问题在使用WSL上的Docker-in-Docker(通过挂载/var/run/docker.sock)时,导致绑定挂载到容器中的主机文件无法在容器内正确显示。
  • 修复了一个会导致以下错误的bug merging settings: integratedWslDistros type mismatch

已知问题

适用于所有平台

  • 如果您在Docker Desktop中启用了需要登录的功能,例如主机网络,您必须保持登录状态才能使用Docker Desktop。要继续使用Docker Desktop或修改这些设置,请确保您已登录。
  • 要启用或禁用使用Compose管理同步文件共享,必须同时勾选或取消勾选访问实验性功能使用Compose管理同步文件共享
  • 当使用自动删除选项(--rm)运行容器时,如果容器启动失败(例如:docker run --rm alpine invalidcommand),Docker CLI 有时会挂起。在这种情况下,可能需要手动终止 CLI 进程。

对于Windows

  • 当以非管理员用户身份启动Docker Desktop时,如果用户不是docker-users组的成员,可能会触发以下错误连接ENOENT \\.\pipe\errorReporter。 可以通过将用户添加到docker-users组来解决此问题。在启动Docker Desktop之前,请确保注销然后重新登录,并取消注册docker-desktop分发(如果已创建),使用wsl --unregister docker-desktop

对于Linux

  • Ubuntu 24.04 LTS 目前还不支持,Docker Desktop 将无法启动。由于最新 Ubuntu 版本限制了非特权命名空间的方式,sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0 需要至少运行一次。详情请参阅 Ubuntu 博客 了解更多详情。

4.29.0

2024-04-08

升级

Bug fixes and enhancements

适用于所有平台

  • 修复了下拉菜单超出应用程序窗口打开的问题。
  • Docker Init:
    • 更新了CLI输出的格式以提高可读性。
    • 修复了.dockerignore中的一个问题,以避免忽略以“compose”开头的应用程序文件。
    • 根据Spring Boot版本改进了Java应用程序的启动方式。修复了 docker/for-mac#7171
    • 移除了用于Rust交叉编译的非官方Docker镜像。
  • 每个同步文件共享的最大文件数现在超过200万。
  • 修复了在选择导出为本地图像字段时导致警告“提供给自动完成的值无效。”的问题。
  • Run Cloud 现在可以从 Docker Desktop 仪表板访问。
  • 选择不发送分析数据现在也会禁用收集错误报告的数据。
  • 您现在可以在容器视图中共享和取消共享到云引擎的端口。
  • 现在可以从仪表板右侧的页脚访问共享云。
  • 在macOS、Windows和Docker Desktop for Linux上增加了对主机网络的测试版支持 docker#238.
  • 为新的未读通知添加了时间戳。
  • 修复了虚拟化支持错误消息中的拼写错误。修复了 docker/desktop-linux#197.
  • Docker Desktop 现在允许通过 PAC 文件中的规则阻止连接到 host.docker.internal
  • 修复了ImagesContainers列表中二级菜单的位置。
  • 修复了在启动带有QEMU的Docker Desktop时发生的竞争条件。
  • 改进了当镜像拉取被注册表访问管理策略阻止时的错误信息。
  • 在内核配置中重新添加 CONFIG_BONDING=y

适用于Mac

适用于Windows

对于Linux

  • 修复了导致UI中可用实验功能列表与后端数据不同步的问题。

安全

  • 禁用了Electron的runAsNode功能以提高安全性。更多信息,请参阅 Electron的文档。
  • 修复了 CVE-2024-6222,该漏洞允许通过容器逃逸获得Docker Desktop VM访问权限的攻击者通过传递扩展和仪表板相关的IPC消息进一步逃逸到主机。由Billy Jheng Bing-Jhong、Đỗ Minh Tuấn、Muhammad Alifa Ramdhan与Trend Micro Zero Day Initiative合作报告。

已知问题

适用于Mac

  • 如果未安装Rosetta,Apple Silicon上的Docker Desktop将无法启动。这将在未来的版本中修复。参见docker/for-mac#7243

4.28.0

2024-02-26

  • 设置管理 现在允许管理员设置默认的文件共享实现,并指定开发者可以添加文件共享的路径。
  • 当启用了SOCKS代理支持测试功能时,增加了对socks5:// HTTP和HTTPS代理URL的支持。
  • 用户现在可以在选项卡中过滤卷,以查看哪些卷正在使用中。

升级

Bug fixes and enhancements

适用于所有平台

  • 修复了postgisQemu的问题。修复了 docker/for-mac#7172.
  • 重新添加了CONFIG_BLK_DEV_DM内核配置以支持kpartx。修复了 docker/for-mac#7197
  • 允许通过代理自动配置pac文件设置SOCKS代理。
  • 重新添加了CONFIG_AUDIT内核配置。
  • 修复了在virtiofs上的Rust构建中的一个错误。参见 rust-lang/docker-rust#161.
  • 修复了在拉取Kubernetes镜像时导致missing registry authentication错误的问题。
  • 修复了导致Docker Compose命令挂起的问题。
  • 修复了docker build中的一个错误,该错误导致Docker Desktop崩溃。修复了 docker/for-win#13885, docker/for-win#13896, docker/for-win#13899, docker/for-mac#7164, docker/for-mac#7169
  • Docker 初始化:
    • 改进了基于 Spring Boot 版本的 Java 应用程序启动方式。修复了 docker/for-mac#7171.
    • 移除了用于 Rust 交叉编译的非官方 Docker 镜像
  • 构建视图:
    • 活动和已完成的构建可以在专用标签页中找到。
    • 构建详情现在显示构建持续时间和缓存步骤。
    • OpenTelemetry 跟踪现在显示在构建结果中。
    • 修复了上下文构建器事件不总是触发的问题。
    • 重新设计了空状态视图,使仪表板更清晰。

对于Mac

对于Windows

  • 修复了Windows上DNS超时的问题。
  • 在WSL用户发行版上增加了对增强容器隔离Docker套接字挂载权限的支持。
  • 修复了在从CLI重定向输出时导致failed to get console mode错误的问题。
  • 修复了在容器内挂载时引擎套接字权限的问题。修复了 docker/for-win#13898

已知问题

对于Windows

  • 在暗模式下,资源>高级设置中的磁盘映像位置不可见。作为解决方法,切换到亮模式。

4.27.2

2024-02-08

升级

Bug fixes and enhancements

适用于所有平台

适用于Mac

  • 重新添加了Istio所需的内核模块。修复了 docker/for-mac#7148.
  • Node 现在使用 Rosetta 下所有可用的核心。
  • 修复了php-fpm的一个问题。修复了 docker/for-mac#7037

4.27.1

2024-02-01

升级

Bug修复和增强

适用于Mac

  • 修复了一个导致Docker Desktop在应用更新时挂起的错误。

4.27.0

2024-01-25

  • Docker init 现在支持 Java,并且对所有用户普遍可用。
  • 同步文件共享 在 Docker Desktop 内提供了快速灵活的主机到虚拟机文件共享。利用 Docker 收购 Mutagen 背后的技术,此功能提供了一种替代虚拟绑定挂载的方法,使用同步的文件系统缓存,提高了开发者在处理大型代码库时的性能。
  • 组织管理员现在可以在启用ECI时 配置Docker套接字挂载权限
  • Containerd 镜像存储 支持现已对所有用户普遍可用。
  • 使用新的docker debug 命令(Beta版)获取任何容器或镜像的调试shell。
  • 拥有Docker Business订阅的组织管理员现在可以配置自定义扩展列表,并启用私有扩展市场(Beta版)

升级

错误修复和功能增强

适用于所有平台

  • docker scan 命令已被移除。要继续了解您镜像的漏洞以及其他许多功能,请使用 docker scout 命令
  • 修复了当选中始终下载更新复选框时,自动更新不会下载的错误。
  • 修复了仪表板工具提示中的拼写错误。修复了 docker/for-mac#7132
  • 改进了信号处理行为(例如,在运行docker命令时在终端中按下Ctrl-C)。
  • 重新添加了minikube start --cni=cilium所需的内核模块。
  • 修复了一个在登录后启用管理员控制时导致安装屏幕再次出现的错误。
  • 修复了一个错误,即如果共享文件夹不再存在,Docker将无法启动。
  • 修复了仪表板容器部分显示的可用CPU数量。
  • 重新添加了内核模块,包括btrfsxfsvfatexfatntfs3f2fssquashfsudf9pautofs
  • 容器使用图表已移至垂直的资源使用侧面板,以便在容器列表中腾出更多空间。通过显示图表按钮访问使用图表的方式保持不变。
  • 修复了一个在登录时选择关闭应用程序会导致后台进程挂起的错误。
  • 修复了一个导致Docker Desktop在通过设置管理禁用分析时变得无响应的错误。
  • Docker 初始化:
    • 增加了对 Java 服务器容器化的支持
    • 在 Windows 上进行了各种修复
  • 构建器设置:
    • 您现在可以随时刷新构建器的存储数据。
    • 您现在可以删除构建器的构建历史记录。
  • 构建视图:
    • 现在当无法删除构建记录时会显示错误信息。
    • 修复了在macOS上无法在无根模式下创建云构建器的问题。
    • 信息选项卡的构建时间部分,现在正确处理了内联缓存和Git源。
    • 历史选项卡上的过去构建中,现在显示了使用的构建器和调用构建的作者。
    • 进行了多项改进,以更好地链接历史选项卡上的过去构建。
    • 进行了多项改进,使构建名称更加准确。
    • 修复了当无法访问构建器时,活动构建列表中的构建卡住的问题。
    • 修复了在某些情况下无法删除构建记录的问题。
    • 修复了构建名称可能为空的问题。
    • 修复了启用资源节省模式时构建视图的一般问题。

适用于Mac

  • 启用了Huge Pages并修复了使用Rosetta时的PHP分段错误。修复了 docker/for-mac#7117
  • 修复了在Rosetta下的xvfb。修复了 docker/for-mac#7122
  • 修复了在Rosetta下出现的ERR_WORKER_INVALID_EXEC_ARGV错误。 docker/for-mac#6998.
  • 修复了一个错误,当admin-settings.json语法无效时,Docker Desktop可能会死锁。

对于Windows

  • 修复了一个在某些区域设置下无法将UTF-16字符串编码为UTF-8的错误。修复了 docker/for-win#13868.
  • 修复了一个在应用重启时,使用WSL集成时凭据存储配置会重置的错误。修复了 docker/for-win#13529.
  • 修复了一个问题,该问题阻止了正确的WSL引擎错误传播给用户。
  • 修复了在从Windows容器模式退出时导致Docker Desktop挂起的问题。

安全

适用于Windows

  • 缓解了Windows上Docker Desktop安装程序中的几个DLL侧加载漏洞,由Suman Kumar Chakraborty报告 ( @Hijack-Everything)

已知问题

适用于所有平台

  • 使用设置管理时,未在admin-settings.json中设置的设置将在Docker Desktop启动时重置为默认值。

适用于Mac

  • 软件更新更新到4.27.0有时会卡住。作为解决方法,请使用此页面上的4.27.0安装程序。

4.26.1

2023-12-14

错误修复和功能增强

适用于所有平台

  • 更新了Docker Desktop内部的反馈链接,以确保它们继续正常工作

对于Windows

  • 将CLI二进制文件切换到与旧版本glibc兼容的版本,例如在Ubuntu 20.04中使用的修复 docker/for-win#13824

4.26.0

2023-12-04

  • 管理员现在可以通过设置管理开发中的功能标签中控制对测试版和实验性功能的访问。
  • 在页脚中引入了四个新的版本更新状态。
  • docker init (Beta) 现在支持 PHP 与 Apache + Composer。
  • 构建 视图 现已正式发布。您现在可以检查构建、排查错误并优化构建速度。

升级

Bug修复和增强功能

适用于所有平台

  • 现在你可以通过使用docker feedback从命令行提供反馈。
  • 改进了常规设置选项卡中启动选项的文本和位置。
  • 重新设计了仪表板的标题栏,添加了指向其他Docker资源的链接,改进了账户信息的显示。
  • 修复了一个同时启用containerd镜像存储和Wasm时无法启用Wasm的错误。
  • containerd 集成:
    • 修复了在未提供 ServerAddress 的情况下,docker push/pull 认证未发送到非 DockerHub 注册表的问题。
    • 修复了 docker history 报告错误的 ID 和标签的问题。
    • 修复了 docker tag 未保留内部元数据的问题。
    • 修复了在守护进程配置为 --userns-remap 时,docker commit 的问题。
    • 修复了 docker image list 以显示真实的镜像创建日期。
    • docker pull 添加了对 -a 标志的支持(拉取所有远程仓库标签)。
    • docker run 添加了对 --group-add 标志的支持(附加额外组)。
    • 调整了 docker push/pull 报告的一些错误。
  • Docker 初始化:
    • 改进了 Golang 和 Rust 的 Dockerfile 中的交叉编译。
    • 改进了 ASP.NET Core 的 Dockerfile 中的缓存。
  • Docker Desktop 现在在仪表板页脚提供了关于待更新内容的更详细信息。
  • 修复了增强容器隔离模式中的一个错误,其中docker run --init失败。
  • 修复了一个错误,即用户在开始下载新版本的Docker Desktop后,提示用户下载新版本的通知仍然可见。
  • 添加了一个通知,用于指示Docker Desktop正在安装新版本。
  • 修复了一个错误,当用户悬停在没有操作调用的通知上时,光标会变为指针。

适用于Mac

适用于Windows

  • 增加了对WSL镜像模式网络的支持(需要WSL v2.0.4及以上版本)。
  • 在DLL和VBS文件上添加了缺失的签名。

已知问题

适用于Windows

  • 在使用WSL 2集成的较旧Linux发行版(例如,Ubuntu 20.04)时,Docker CLI无法工作,因为这些发行版使用的glibc版本低于2.32。这将在未来的版本中修复。参见 docker/for-win#13824.

4.25.2

2023-11-21

错误修复和功能增强

适用于所有平台

  • 修复了在欢迎调查中提交响应后出现空白UI的错误。

对于Windows

  • 修复了在WSL 2上的Docker Desktop在空闲时会意外关闭dockerd的bug。修复了 docker/for-win#13789

4.25.1

2023-11-13

Bug fixes and enhancements

适用于所有平台

对于Windows

  • 修复了某些用户在托盘菜单中无法看到切换到Windows容器选项的问题。参见 docker/for-win#13761
  • 修复了一个错误,该错误导致使用非sh shell的用户无法使用WSL集成。参见 docker/for-win#13764
  • 重新添加了 DockerCli.exe

4.25.0

2023-10-26

  • Rosetta 现已对所有运行 macOS 13 或更高版本的用户普遍可用。它在 Apple Silicon 上提供了更快的基于 Intel 的镜像模拟。要使用 Rosetta,请参阅 设置。在 macOS 14.1 及更高版本上,Rosetta 默认启用。
  • Docker Desktop 现在可以检测 WSL 版本是否过时。如果检测到 WSL 版本过时,您可以选择让 Docker Desktop 自动更新安装,或者您可以在 Docker Desktop 之外手动更新 WSL。
  • Windows 上的 Docker Desktop 新安装现在需要 Windows 版本为 19044 或更高版本。
  • 管理员现在可以在 设置管理中控制Docker Scout镜像分析。

升级

Bug修复和增强功能

适用于所有平台

  • 修复了Accept License弹出窗口中的间距问题。
  • 修复了在通知列表通知详情视图之间导航时,通知抽屉大小变化的问题。
  • containerd 集成:
    • docker push 现在支持 Layer already existsMounted from 进度状态。
    • docker save 现在能够从存储库的所有标签中导出镜像。
    • 隐藏清单、配置和索引(小型 JSON 数据块)的上传进度,以匹配原始的上传行为。
    • 修复了 docker diff 包含额外差异的问题。
    • 修复了 docker history 未显示使用经典构建器构建的镜像的中间镜像 ID 的问题。
    • 修复了 docker load 无法从压缩的 tar 存档加载镜像的问题。
    • 修复了注册表镜像无法工作的问题。
    • 修复了在同一容器上多次并发调用 docker diff 时无法正常工作的问题。
    • 修复了 docker push 在将层推送到同一注册表上的不同存储库时未重用层的问题。
  • Docker 初始化:
    • 修复了生成文件中包含的过时 Docker 文档链接
    • 添加对 ASP.NET Core 8 的支持(除了 6 和 7 之外)
  • 修复了安装Wasm shims时导致失败的bug。
  • 修复了一个错误,该错误导致Docker Desktop每15分钟退出资源节省模式,或者如果计时器设置为超过15分钟,资源节省模式永远不会启动。
  • 启用后台SBOM索引选项提升至常规设置

对于Mac

  • 在macOS上安装或更新Docker Desktop的最低操作系统版本现在是macOS Monterey(版本12)或更高版本。
  • 当用户不匹配Docker.app的所有者时,无法完成更新时增强的错误消息。修复 docker/for-mac#7000.
  • 修复了一个错误,当/var/run/docker.sock配置错误时,重新应用配置可能无法工作。
  • 如果ECRCredentialHelper已经存在于/usr/local/bin中,Docker Desktop不会覆盖它。

适用于Windows

  • 修复了在Windows家庭版上切换到Windows容器会显示在托盘菜单中的问题。修复了 docker/for-win#13715

对于Linux

已知问题

对于Mac

  • 升级到MacOS 14可能会导致Docker Desktop也更新到最新版本,即使自动更新选项已禁用。
  • 无法从命令行卸载Docker Desktop。作为替代方案,您可以 从仪表板卸载Docker Desktop

对于Windows

  • 切换到Windows容器 选项在托盘菜单中可能不会显示在Windows上。作为解决方法,编辑 settings.json 文件 并设置 "displaySwitchWinLinContainers": true

适用于所有平台

  • 如果交换文件大小设置为0MB,Docker操作(如拉取镜像或登录)会失败,并显示“连接被拒绝”或“超时”错误。作为解决方法,请在设置中的资源选项卡中将交换文件大小配置为非零值。

4.24.2

2023-10-12

Bug fixes and enhancements

适用于所有平台

  • 修复了Docker Desktop会向notify.bugsnag.com发送多个请求的错误。修复了 docker/for-win#13722
  • 修复了PyTorch的性能回归问题。

4.24.1

2023-10-04

下载 Docker Desktop

Windows (校验和) |

Bug修复和功能增强

对于Windows

  • 修复了Docker Desktop for Windows上的一个错误,该错误导致Docker Desktop仪表板无法正确显示容器日志。修复了 docker/for-win#13714.

4.24.0

2023-09-28

  • 新的通知中心现已对所有用户开放,您可以收到新版本发布、安装进度更新等通知。选择Docker Desktop仪表板右下角的铃铛图标以访问通知中心。
  • Compose Watch 现已对所有用户开放。有关更多信息,请参阅 使用 Compose Watch
  • 资源节省器现已对所有用户开放,并默认启用。要配置此功能,请导航至设置中的资源选项卡。更多信息请参见 Docker Desktop的资源节省器模式
  • 您现在可以直接从Docker Desktop仪表板查看和管理Docker Engine的状态,包括暂停、停止和恢复。

升级

  • Compose v2.22.0
  • Go 1.21.1
  • Wasm 运行时环境:
    • wasmtime, wasmedge v0.2.0.
    • lunatic, slight, spin, 和 wwsv0.9.1.
    • 添加了 wasmer wasm 垫片。

Bug修复和增强

适用于所有平台

  • Docker 初始化:
    • 修复了在 Windows 上为 ASP.NET 项目格式化 Dockerfile 文件路径的问题。
    • 改进了在包含大量文件的大型目录中语言检测的性能。
  • Containers视图使用的资源使用统计轮询添加了超时。修复了 docker/for-mac#6962.
  • containerd 集成:
    • 实现了推送/拉取/保存镜像事件。
    • 实现了拉取旧版 schema1 镜像。
    • 实现了 docker push --all-tags
    • 实现了使用特定镜像的容器计数(例如在 docker system df -v 中可见)。
    • 验证了拉取的镜像名称未被保留。
    • 处理了 userns-remap 守护进程设置。
    • 修复了在使用多个 COPY/ADD 指令时旧版构建器的构建错误。
    • 修复了 docker load 导致池损坏,从而影响后续镜像相关操作的问题。
    • 修复了无法通过带有 sha256: 前缀的截断摘要引用镜像的问题。
    • 修复了 docker images(不带 --all)显示中间层(由旧版经典构建器创建)的问题。
    • 修复了 docker diff 包含额外差异的问题。
    • 更改了 docker pull 输出以匹配禁用 containerd 集成时的输出。
  • 修复了Kubernetes状态消息中的语法错误。参见 docker/for-mac#6971.
  • Docker 容器现在默认使用所有主机 CPU 核心。
  • 改进了仪表板UI中的进程间安全性。

适用于Mac

  • 修复了在macOS版本低于12.5的Apple silicon Macs上的内核恐慌问题。修复了 docker/for-mac#6975.
  • 修复了一个错误,当filesharingDirectories中包含无效目录时,Docker Desktop无法启动。修复了 docker/for-mac#6980.
  • 修复了安装程序创建根用户目录的错误。修复了 docker/for-mac#6984.
  • 修复了一个错误,当缺少/Library/LaunchDaemons时,安装程序在设置docker socket时失败。修复了 docker/for-mac#6967.
  • 修复了在macOS上将特权端口绑定到非本地主机IP时出现的权限被拒绝错误。修复了 docker/for-mac#697.
  • 修复了4.23版本中引入的资源泄漏问题。相关问题参见 docker/for-mac#6953.

适用于Windows

  • 修复了一个错误,当服务已经在运行时,会出现“Docker Desktop 服务未运行”的弹出窗口。参见 docker/for-win#13679.
  • 修复了一个导致Docker Desktop在Windows主机上无法启动的错误。修复了 docker/for-win#13662.
  • 修改了Docker Desktop的资源节省功能,使其在没有容器运行时跳过减少WSL上的内核内存,因为这在某些情况下会导致超时。相反,鼓励用户通过.wslconfig文件(自WSL 1.3.10起可用)直接在WSL上启用"autoMemoryReclaim"。

已知问题

For Mac

  • 使用端口53创建容器时失败,错误地址already in use。作为解决方法,通过在位于~/Library/Group Containers/group.com.docker/settings.jsonsettings.json文件中添加"kernelForUDP": false来停用网络加速。

4.23.0

2023-09-11

升级

  • 新增了对新的Wasm运行时的支持:wws和lunatic。
  • docker init 现在支持 ASP.NET
  • 提高了macOS上暴露端口的性能,例如使用docker run -p

已移除

  • 已从Docker Desktop中移除Compose V1,因为它已停止接收更新。Compose V2已取代它,并已集成到所有当前的Docker Desktop版本中。有关更多信息,请参阅 迁移到Compose V2

Bug 修复和功能增强

适用于所有平台

  • 使用 Docker Scout,您现在可以:
    • 使用docker scout cache管理临时和缓存文件。
    • 使用docker scout environment管理环境。
    • 使用docker scout config配置默认组织。
    • 使用docker scout cves --format only-packages列出镜像的包及其漏洞。
    • 使用docker scout enroll将组织注册到Docker Scout。
    • 使用docker scout cves --type fs停止、分析和比较本地文件系统。
  • 修复了当Docker Desktop处于资源节省模式时,docker stats会挂起的错误。
  • 修复了一个错误,即通过Docker Desktop仪表板中的设置关闭实验性功能时,无法完全关闭资源节省模式。
  • 修复了容器列表操作按钮被剪切的错误。
  • containerd 镜像存储:
    • 修复了与某些镜像交互时出现的failed to read config content错误。
    • 修复了在使用旧版经典构建器(DOCKER_BUILDKIT=0)时,使用FROM scratch指令构建 Dockerfile 的问题。
    • 修复了在使用旧版经典构建器(DOCKER_BUILDKIT=0)构建镜像时出现的mismatched image rootfs errors错误。
    • 修复了ONBUILDMAINTAINER Dockerfile 指令。
    • 修复了健康检查。

对于Mac

  • 所有运行macOS 12.5或更高版本的用户现在默认启用了VirtioFS。您可以在设置中的通用选项卡中恢复此设置。
  • 提高了单流TCP吞吐量。
  • 恢复了macOS的健康检查,如果系统发生可能影响Docker二进制文件运行的更改,会通知您。

对于Linux

对于Windows

  • 修复了一个错误,即非管理员用户在切换到Windows容器或在禁用WSL并切换到Hyper-V引擎后会被提示输入凭据。 此问题会在操作系统重启后或Docker Desktop冷启动时发生。

安全

适用于所有平台

  • 修复了 CVE-2023-5165,该漏洞允许通过调试shell绕过增强容器隔离。受影响的功能仅适用于Docker Business客户,并且假设用户未被授予本地root或管理员权限的环境。
  • 修复了 CVE-2023-5166 该漏洞允许通过精心构造的扩展图标URL窃取访问令牌。

已知问题

  • 在Docker Desktop上绑定特权端口在macOS上不起作用。作为解决方法,您可以在所有接口上暴露端口(使用0.0.0.0)或使用localhost(使用127.0.0.1)。

4.22.1

2023-08-24

Bug fixes and enhancements

适用于所有平台

  • 缓解了影响Docker Desktop启动和资源节省器模式的几个问题。 docker/for-mac#6933

对于Windows

4.22.0

2023-08-03

升级

注意

在此版本中,捆绑的Docker Compose和Buildx二进制文件显示了不同的版本字符串。这与我们在不引起向后兼容性问题的情况下测试新功能的努力有关。

例如,docker buildx version 输出 buildx v0.11.2-desktop.1

  • 资源使用情况 已从实验阶段移至正式发布。
  • 您现在可以使用 include将大型Compose项目拆分为多个子项目。

Bug fixes and enhancements

适用于所有平台

  • 设置管理 现在允许您为您的组织关闭 Docker 扩展。
  • 修复了在系统暂停时从用户界面开启Kubernetes失败的bug。
  • 修复了在系统暂停时从用户界面开启Wasm失败的bug。
  • 绑定挂载现在会在你 检查容器时显示。
  • 现在,当启用 containerd 镜像存储时,您可以下载 Wasm 运行时。
  • 使用 快速搜索,您现在可以:
    • 查找本地系统上的任何容器或Compose应用程序。此外,您可以访问环境变量并执行基本操作,如启动、停止或删除容器。
    • 查找公共Docker Hub镜像、本地镜像或远程仓库中的镜像。
    • 发现更多关于特定扩展的信息并安装它们。
    • 浏览您的卷并获取有关关联容器的见解。
    • 搜索并访问Docker的文档。

对于Mac

适用于Windows

  • 修复了一个自诊断工具在预期vpnkit未运行时显示误报失败的bug。修复了 docker/for-win#13479.
  • 修复了搜索栏中无效正则表达式导致错误的bug。修复了 docker/for-win#13592.
  • 资源节省器现在可在Windows Hyper-V上使用。当没有容器运行时,它会优化Docker Desktop对系统资源的使用。要访问此功能,请确保您已在设置中启用了实验性功能的访问权限

4.21.1

2023-07-03

适用于所有平台

For Mac

  • 移除了配置健康检查,以便进一步调查和解决特定设置。

4.21.0

2023-06-29

  • 新增了对新的Wasm运行时的支持:slight、spin和wasmtime。当启用containerd镜像存储时,用户可以按需下载Wasm运行时。
  • 在Docker初始化中添加了对Rust服务器的支持。
  • Beta 版本的 Builds 视图,允许您检查构建并管理构建器。这可以在 设置 中的 开发中的功能 选项卡中找到。

升级

Bug fixes and enhancements

适用于所有平台

  • Docker Desktop 现在会在不使用时自动暂停 Docker Engine,并在需要时再次唤醒。
  • VirtioFS 现在是 macOS 12.5 及以上版本上 Docker Desktop 新安装的默认文件共享实现。
  • 使用OpenTelemetry改进产品使用报告(实验性)。
  • 修复了Docker套接字权限问题。修复了 docker/for-win#13447docker/for-mac#6823
  • 修复了在暂停状态下退出应用程序时导致Docker Desktop挂起的问题。
  • 修复了一个导致容器视图中的日志终端标签内容被固定工具栏覆盖的错误 docker/for-mac#6814.
  • 修复了一个导致输入标签与容器运行对话框中的输入值重叠的错误。修复了 docker/for-win#13304.
  • 修复了一个导致用户无法选择Docker扩展菜单的错误。修复了 docker/for-mac#6840docker/for-mac#6855

适用于Mac

  • 为macOS添加了一个健康检查,如果系统发生变化可能会影响Docker二进制文件的运行,会通知用户。

对于Windows

  • 修复了WSL 2上的一个bug,即如果Desktop暂停、终止然后重新启动,除非首先使用wsl --shutdown关闭WSL,否则启动会挂起。
  • 修复了在PATH中没有wsl.exe的情况下WSL引擎的问题 docker/for-win#13547.
  • 修复了WSL引擎检测到Docker Desktop发行版驱动器缺失的情况的能力 docker/for-win#13554.
  • 缓慢或无响应的WSL集成不再阻止Docker Desktop启动。修复了 docker/for-win#13549.
  • 修复了导致Docker Desktop在启动时崩溃的错误 docker/for-win#6890.
  • 添加了以下安装程序标志:
    • --hyper-v-default-data-root 指定Hyper-V虚拟机磁盘的默认位置。
    • --windows-containers-default-data-root 指定Windows容器的默认数据根目录。
    • --wsl-default-data-root 指定WSL发行版磁盘的默认位置。

4.20.1

2023-06-05

Bug修复和增强

适用于所有平台

  • containerd 镜像存储:修复了一个导致 docker load 在加载包含认证的镜像时失败的 bug。
  • containerd 镜像存储:修复了构建期间的默认镜像导出器。

适用于Windows

4.20.0

2023-05-30

升级

Bug修复和增强功能

适用于所有平台

  • Docker Scout CLI 现在如果没有提供参数,会找到最近构建的镜像。
  • 改进了 Docker Scout CLI compare 命令。
  • 添加了关于 2023年11月Docker Compose ECS/ACS集成退役的警告。可以通过COMPOSE_CLOUD_EOL_SILENT=1来抑制。
  • 修复了一个HTTP代理错误,其中HTTP 1.0客户端可能会收到HTTP 1.1响应。
  • 在WSL-2上启用了Docker Desktop的增强容器隔离(ECI)功能。此功能适用于Docker Business订阅用户。
  • 修复了Containers表中的一个错误,该错误导致在重新安装Docker Desktop后,之前隐藏的列再次显示。

对于 Mac

  • 现在,当容器中的文件被删除时,您可以更快地回收磁盘空间。相关于 docker/for-mac#371.
  • 修复了一个阻止容器访问169.254.0.0/16 IP地址的错误。修复了 docker/for-mac#6825.
  • 修复了com.docker.diagnose check中的一个错误,该错误会在即使不期望vpnkit运行时也会抱怨缺少vpnkit。相关于 docker/for-mac#6825.

适用于Windows

  • 修复了一个导致WSL数据无法移动到不同磁盘的错误。修复了 docker/for-win#13269.
  • 修复了一个错误,即Docker Desktop在关闭时未停止其WSL分发(docker-desktop和docker-desktop-data),从而不必要地消耗了主机内存。
  • 新增了一个设置,允许Windows Docker守护进程在运行Windows容器时使用Docker Desktop的内部代理。请参阅 Windows代理设置

对于Linux

  • 修复了Docker Compose V1/V2兼容性设置的问题。

4.19.0

2023-04-27

  • Docker Engine 和 CLI 已更新至 Moby 23.0.
  • 学习中心 现在支持产品内引导。
  • Docker init (Beta) 现在支持 Node.js 和 Python。
  • 在macOS上,虚拟机与主机之间的网络速度更快。
  • 您现在可以在不拉取的情况下从Docker Desktop检查和分析远程镜像。
  • Artifactory 镜像视图的可用性和性能进行了改进。

已移除

  • 移除了 docker scan 命令。要继续了解镜像的漏洞以及其他许多功能,请使用新的 docker scout 命令。运行 docker scout --help,或 阅读文档以了解更多

升级

Bug fixes and enhancements

适用于所有平台

  • 改进了docker scout compare命令以比较两个镜像,现在也可以在docker scout diff下使用别名。
  • docker-compose操作失败时,向仪表板错误添加了更多详细信息( docker/for-win#13378)。
  • 增加了在安装过程中设置HTTP代理配置的支持。这可以通过在从CLI安装时使用--proxy-http-mode--overrider-proxy-http--override-proxy-https--override-proxy-exclude安装程序标志来实现,适用于 MacWindows,或者通过在install-settings.json文件中设置值来实现。
  • Docker Desktop 现在在应用程序启动时不再覆盖 .docker/config.json 中的 credsStore 键。请注意,如果您使用自定义凭证助手,则 CLI 的 docker logindocker logout 不会影响 UI 是否登录到 Docker。一般来说,最好通过 UI 登录 Docker,因为 UI 支持多因素认证。
  • 添加了一个关于 即将从Docker Desktop中移除Compose V1的警告。可以通过COMPOSE_V1_EOL_SILENT=1来抑制此警告。
  • 在Compose配置中,YAML中的布尔字段应为truefalse。已弃用的YAML 1.1值(如“on”或“no”)现在会产生警告。
  • 改进了图像表的用户界面,允许行使用更多可用空间。
  • 修复了端口转发中的各种错误。
  • 修复了一个HTTP代理错误,其中没有服务器名称指示记录的HTTP请求会被拒绝并报错。

适用于Windows

  • 恢复到在Windows上完全修补etc/hosts(再次包括host.docker.internalgateway.docker.internal)。对于WSL,此行为由常规选项卡中的新设置控制。修复了 docker/for-win#13388docker/for-win#13398
  • 修复了在更新 Docker Desktop 时桌面上出现的一个虚假的 courgette.log 文件。修复了 docker/for-win#12468.
  • 修复了“放大”快捷键(ctrl+=)。修复了 docker/for-win#13392.
  • 修复了一个错误,该错误导致在第二次容器类型切换后托盘菜单无法正确更新。修复了 docker/for-win#13379.

对于Mac

  • 在使用macOS Ventura及以上版本的虚拟化框架时,提高了虚拟机网络的性能。Docker Desktop for Mac现在使用gVisor代替VPNKit。要继续使用VPNKit,请将"networkType":"vpnkit"添加到位于~/Library/Group Containers/group.com.docker/settings.jsonsettings.json文件中。
  • 修复了在卸载时显示错误窗口的错误。
  • 修复了忽略设置deprecatedCgroupv1的错误。修复了 docker/for-mac#6801.
  • 修复了docker pull返回EOF的情况。

对于Linux

安全

适用于所有平台

4.18.0

2023-04-03

  • 根据路线图docker init的初始测试版发布。
  • 新增了一个学习中心标签,以帮助用户开始使用Docker。
  • 在Docker Compose中添加了一个实验性的文件监视命令,该命令会在您编辑和保存代码时自动更新正在运行的Compose服务。

升级

Bug fixes and enhancements

适用于所有平台

  • Docker Scout CLI 现在可以比较两个镜像并显示包和漏洞的差异。此命令处于早期访问阶段,未来可能会有所变化。
  • Docker Scout CLI 现在使用 docker scout recommendations 显示基础镜像更新和修复建议。它还使用 docker scout quickview 命令显示镜像的简短概述。
  • 您现在可以直接从市场搜索扩展,也可以使用全局搜索
  • 修复了一个错误,即docker buildx容器构建器在24小时后会失去网络访问权限。
  • 减少了用户被提示对Docker Desktop提供反馈的频率。
  • 移除了虚拟机交换空间的最小大小限制。
  • 在HTTP代理排除列表中增加了对子域名匹配、CIDR匹配、._. 的支持。
  • 修复了透明TLS代理中未设置服务器名称指示字段时的错误。
  • 修复了Docker Desktop引擎状态消息中的语法错误。

对于Windows

  • 修复了docker run --gpus=all挂起的错误。修复了 docker/for-win#13324.
  • 修复了注册表访问管理策略更新未下载的错误。
  • Docker Desktop 现在允许在 C: 上启用 BitLocker 时运行 Windows 容器。
  • 使用WSL后端的Docker Desktop不再需要com.docker.service特权服务永久运行。有关更多信息,请参阅 Windows权限要求

对于Mac

  • 修复了一个性能问题,该问题导致VirtioFS用户的主机上存储的属性不会被缓存。
  • 首次启动 Docker Desktop for Mac 时,用户会看到一个安装窗口,用于确认或调整需要特权访问的配置。有关更多信息,请参阅 Mac 的权限要求
  • 设置中新增了高级选项卡,用户可以在其中调整需要特权访问的设置。

对于Linux

安全

适用于所有平台

  • 修复了 CVE-2023-1802,其中Artifactory集成的安全问题会导致在HTTPS检查失败时回退到通过普通HTTP发送注册表凭据。只有启用了Access experimental features的用户会受到影响。修复了 docker/for-win#13344

适用于Mac

  • 移除了com.apple.security.cs.allow-dyld-environment-variablescom.apple.security.cs.disable-library-validation权限,这些权限允许通过DYLD_INSERT_LIBRARIES环境变量加载任意动态库到Docker Desktop中。

已知问题

  • 故障排除页面卸载Mac上的Docker Desktop可能会触发意外的致命错误弹出窗口。

4.17.1

2023-03-20

Bug修复和增强

适用于Windows

  • Docker Desktop 现在允许在 C: 盘启用 BitLocker 时运行 Windows 容器。
  • 修复了一个错误,即docker buildx容器构建器在24小时后会失去网络访问权限。
  • 修复了注册表访问管理策略更新未下载的错误。
  • 改进了调试信息,以更好地描述在WSL 2下的故障。

已知问题

  • 在Windows上使用WSL 2后端运行带有--gpus的容器不起作用。这将在未来的版本中修复。参见 docker/for-win/13324

4.17.0

2023-02-27

  • Docker Desktop 现在附带 Docker Scout。从 Docker Hub 和 Artifactory 仓库拉取并查看镜像分析,获取基础镜像更新和推荐的标签及摘要,并根据漏洞信息过滤您的镜像。要了解更多信息,请参阅 Docker Scout
  • docker scan 已被 docker scout 取代。有关更多信息,请参阅 Docker Scout CLI
  • 您现在可以发现已在扩展市场中自主发布的扩展。有关自主发布扩展的更多信息,请参阅 Marketplace Extensions
  • 容器文件资源管理器作为实验性功能提供。直接从GUI调试容器内的文件系统。
  • 您现在可以在全局搜索中搜索卷。

升级

Bug fixes and enhancements

适用于所有平台

  • 修复了一个诊断收集可能会挂起等待子进程退出的错误。
  • 防止透明HTTP代理过度篡改请求。修复了Tailscale扩展登录问题,参见 tailscale/docker-extension#49.
  • 修复了透明TLS代理中未设置服务器名称指示字段的错误。
  • 在HTTP代理排除列表中增加了对子域名匹配、CIDR匹配、.*. 的支持。
  • 确保在上传诊断信息时遵守HTTP代理设置。
  • 修复了从凭证助手获取凭证时出现的致命错误。
  • 修复了与并发日志记录相关的致命错误。
  • 改进了市场中的扩展操作的用户界面。
  • 在扩展市场中添加了新的过滤器。您现在可以通过类别和审核状态来过滤扩展。
  • 添加了一种向Docker报告恶意扩展的方式。
  • 更新了开发环境至v0.2.2,包含初始设置的可靠性和安全性修复。
  • 仅为新用户添加了欢迎调查。
  • 故障排除页面上的确认对话框现在与其他类似对话框的风格一致。
  • 修复了在Kubernetes集群启动前重置导致的致命错误。
  • 实现了docker import用于containerd集成。
  • 修复了使用现有标签进行图像标记与containerd集成的问题。
  • 在containerd集成中实现了图像的悬挂过滤器。
  • 修复了docker ps在使用containerd集成时,对于镜像不再存在的容器失败的问题。

对于Mac

  • 修复了在未安装特权助手工具com.docker.vmnetd的系统上下载注册表访问管理策略的问题。
  • 修复了一个错误,如果/Library/PrivilegedHelperTools不存在,com.docker.vmnetd无法安装。
  • 修复了“system”代理无法处理“autoproxy” / “pac文件”配置的错误。
  • 修复了在区分大小写的文件系统上,vmnetd安装无法读取Info.Plist的bug。实际文件名是Info.plist。修复了 docker/for-mac#6677
  • 修复了一个错误,该错误导致用户在每次启动时都被提示创建docker socket符号链接。修复了 docker/for-mac#6634.
  • 修复了一个导致登录时启动Docker Desktop设置无法工作的错误。修复了 docker/for-mac#6723.
  • 修复了UDP连接跟踪和host.docker.internal。修复了 docker/for-mac#6699
  • 改进了kubectl符号链接逻辑,以尊重/usr/local/bin中现有的二进制文件。修复了 docker/for-mac#6328
  • Docker Desktop 现在会在您选择使用 Rosetta 但尚未安装时自动安装它。

对于Windows

  • 添加了WSL集成工具与musl的静态链接,因此无需在用户发行版中安装alpine-pkg-glibc
  • 增加了在WSL 2下运行cgroupv2的支持。通过在%USERPROFILE%\.wslconfig文件的[wsl2]部分添加kernelCommandLine = systemd.unified_cgroup_hierarchy=1 cgroup_no_v1=all来激活此功能。
  • 修复了在WSL 2模式下导致Docker Desktop卡在“启动”阶段的问题(在4.16版本中引入)。
  • 修复了在启用文件系统压缩或加密时,Docker Desktop 无法启动 WSL 2 后端的问题。
  • 修复了Docker Desktop在启动时未能报告缺少或过时(无法运行WSL版本2发行版)的WSL安装的问题。
  • 修复了在Visual Studio Code中打开目标路径包含空格时失败的bug。
  • 修复了一个导致~/.docker/context损坏和错误信息“unexpected end of JSON input”的bug。你也可以删除~/.docker/context来解决这个问题。
  • 确保在WSL 2中使用的凭证助手已正确签名。相关于 docker/for-win#10247.
  • 修复了导致WSL集成代理错误终止的问题。相关于 docker/for-win#13202.
  • 修复了启动时的损坏上下文。修复了 docker/for-win#13180docker/for-win#12561

对于Linux

  • 为Linux版Docker Desktop添加了Docker Buildx插件。
  • 将RPM和Arch Linux发行版的压缩算法更改为xz
  • 修复了一个导致在Debian包的根目录中留下残留文件的错误。修复了 docker/for-linux#123.

安全

适用于所有平台

  • 修复了 CVE-2023-0628,该漏洞允许攻击者在初始化期间通过诱骗用户打开一个特制的恶意docker-desktop:// URL在Dev Environments容器内执行任意命令。
  • 修复了 CVE-2023-0629,该漏洞允许非特权用户通过设置Docker主机为docker.raw.sock,或在Windows上设置为npipe:////.pipe/docker_engine_linux,通过-H--host)CLI标志或DOCKER_HOST环境变量绕过增强容器隔离(ECI)限制,并启动没有ECI提供的额外加固功能的容器。这不影响已经运行的容器,也不影响通过常规方法(不使用Docker的原始套接字)启动的容器。

4.16.3

2023-01-30

错误修复和增强功能

适用于Windows

  • 修复了在启用文件系统压缩或加密时,Docker Desktop 无法启动 WSL 2 后端的问题。修复了 docker/for-win#13184.
  • 修复了Docker Desktop在启动时未能报告缺失或过时的WSL安装的问题。修复了 docker/for-win#13184.

4.16.2

2023-01-19

Bug fixes and enhancements

适用于所有平台

  • 修复了在启用containerd集成功能时,docker builddocker tag命令产生image already exists错误的问题。
  • 修复了在Docker Desktop 4.16中引入的一个回归问题,该问题导致在amd64系统上使用目标平台linux/386的容器网络中断。修复了 docker/for-mac/6689.

For Mac

  • 修复了Info.plist的大小写问题,该问题导致vmnetd在区分大小写的文件系统上崩溃。修复了 docker/for-mac/6677.

对于Windows

  • 修复了Docker Desktop 4.16引入的一个回归问题,该问题导致在WSL2模式下卡在“启动”阶段。修复了 docker/for-win/13165

4.16.1

2023-01-13

Bug fixes and enhancements

适用于所有平台

4.16.0

2023-01-12

  • 扩展功能已从测试版转为正式版。
  • 快速搜索已从实验阶段转为正式发布。
  • 扩展现在包含在快速搜索中。
  • 分析大型图像的速度现在提高了4倍。
  • 新的本地图像视图已从实验阶段移至正式发布。
  • 新增了针对MacOS 13的Beta功能,Linux的Rosetta,用于在Apple Silicon上更快地模拟基于Intel的镜像。

升级

Bug修复和功能增强

适用于所有平台

  • 修复了docker build --quiet在使用containerd集成时不输出镜像标识符的问题。
  • 修复了在使用containerd集成时,图像检查不显示图像标签的问题。
  • 增加了运行中和已停止容器图标之间的对比度,以便色盲用户更容易扫描容器列表。
  • 修复了一个错误,即用户被反复提示输入新的HTTP代理凭据,直到Docker Desktop重新启动。
  • 添加了一个诊断命令 com.docker.diagnose login 来检查HTTP代理配置。
  • 修复了在compose堆栈上的操作无法正常工作的问题。修复了 docker/for-mac#6566.
  • 修复了Docker Desktop Dashboard在启动时尝试获取磁盘使用信息并在引擎运行前显示错误横幅的问题。
  • 在所有实验功能旁边添加了一个信息横幅,说明如何选择退出实验功能访问。
  • Docker Desktop 现在支持通过 HTTP 代理下载 Kubernetes 镜像。
  • 修复了工具提示不遮挡操作按钮的问题。修复了 docker/for-mac#6516.
  • 修复了容器视图中空白“发生错误”容器列表的问题。

对于Mac

  • 在macOS上安装或更新Docker Desktop的最低操作系统版本现在是macOS Big Sur(版本11)或更高版本。
  • 修复了在使用旧版osxfs实现进行文件共享时,启用增强容器隔离功能后Docker引擎无法启动的问题。
  • 修复了在VirtioFS上创建的文件设置了可执行位的问题。修复了 docker/for-mac#6614.
  • 重新添加了一种从命令行卸载 Docker Desktop 的方法。修复了 docker/for-mac#6598.
  • 修复了硬编码的 /usr/bin/kill。修复了 docker/for-mac#6589.
  • 修复了在VirtioFS上共享的非常大的文件(> 38GB)使用truncate命令截断时大小不正确的问题。
  • 设置中的磁盘映像大小更改为使用十进制系统(以10为基数),以与Finder显示磁盘容量的方式一致。
  • 修复了在网络负载下Docker崩溃的问题。修复了 docker/for-mac#6530.
  • 修复了一个导致Docker在每次重启后提示用户安装/var/run/docker.sock符号链接的问题。
  • 确保安装/var/run/docker.sock符号链接的登录项已签名。
  • 修复了在恢复出厂设置时删除$HOME/.docker的错误。

适用于 Windows

  • 修复了docker build在打印“load metadata for”时挂起的问题。修复了 docker/for-win#10247.
  • 修复了diagnose.exe输出中的拼写错误 修复 docker/for-win#13107.
  • 增加了在WSL 2下运行cgroupv2的支持。通过在%USERPROFILE%\.wslconfig文件的[wsl2]部分添加kernelCommandLine = systemd.unified_cgroup_hierarchy=1 cgroup_no_v1=all来激活此功能。

已知问题

4.15.0

2022-12-01

  • 为macOS用户提供了显著的性能改进,可选择启用新的VirtioFS文件共享技术。适用于macOS 12.5及以上版本。
  • Docker Desktop for Mac 不再需要在安装或首次运行时安装特权助手进程 com.docker.vmnetd。有关更多信息,请参阅 Mac 的权限要求
  • 新增了 WebAssembly 功能。与 containerd 集成一起使用。
  • 改进了对测试版和实验性设置的描述,以清楚地解释它们之间的差异以及人们如何访问它们。
  • VM 的可用磁盘空间现在显示在 Docker Desktop Dashboard 的页脚中,适用于 Mac 和 Linux。
  • 如果可用空间低于3GB,页脚将显示磁盘空间警告。
  • 对Docker Desktop界面的更改,以使其更符合ADA无障碍标准并在视觉上更加统一。
  • 扩展中添加了一个构建标签,其中包含构建扩展所需的所有必要资源。
  • 增加了更轻松分享扩展的能力,可以通过docker extension share CLI 或扩展管理选项卡中的分享按钮来实现。
  • 市场中的扩展现在显示安装次数。您还可以根据安装次数对扩展进行排序。
  • 开发环境允许将Git仓库克隆到本地绑定挂载,因此您可以使用任何本地编辑器或IDE。
  • 更多开发环境改进:自定义名称、更好的私有仓库支持、改进的端口处理。

升级

Bug修复和增强功能

适用于所有平台

  • 使用containerd集成后,容器现在在重启时会恢复。
  • 修复了使用containerd集成时列出多平台镜像的问题。
  • 通过containerd集成更好地处理悬挂镜像。
  • 为包含containerd集成的图像实现“reference”过滤器。
  • 增加了通过容器中的proxy.pac自动选择上游HTTP/HTTPS代理的支持,例如docker pull等。
  • 修复了在拉取时解析图像引用时的回归问题。修复了 docker/for-win#13053, docker/for-mac#6560, 和 docker/for-mac#6540.

For Mac

  • 改进了docker pull的性能。

对于Windows

  • 修复了Docker启动和开发者登录时未使用系统HTTP代理的问题。
  • 当 Docker Desktop 使用“系统”代理时,如果 Windows 设置发生变化,Docker Desktop 现在可以在不重启的情况下使用新的 Windows 设置。

对于Linux

  • 修复了Linux上的热重载问题。修复了 docker/desktop-linux#30.
  • 在Linux上禁用了托盘图标动画,修复了部分用户的崩溃问题。

4.14.1

2022-11-17

Bug fixes and enhancements

适用于所有平台

  • 修复了在使用注册表访问管理时的容器DNS查找问题。

适用于Mac

  • 修复了阻止图像选项卡上的分析图像按钮工作的问题。
  • 修复了一个错误,该错误导致如果/usr/local/lib不存在,则不会为用户创建符号链接。修复了 docker/for-mac#6569

4.14.0

2022-11-10

  • 将虚拟化框架设置为macOS >= 12.5的默认虚拟机管理程序。
  • 将之前的安装迁移到适用于macOS >= 12.5的虚拟化框架管理程序。
  • 增强型容器隔离功能,现可供Docker商业用户使用,可以从常规设置中启用。

更新

Bug修复和功能增强

适用于所有平台

  • Docker Desktop 现在需要一个大小为 /24 的内部网络子网。如果您之前使用的是 /28,它会自动扩展到 /24。如果您遇到网络问题,请检查 Docker 子网与您的基础设施之间是否存在冲突。修复 docker/for-win#13025.
  • 修复了一个问题,该问题阻止用户在Git URL包含大写字符时创建开发环境。
  • 修复诊断中报告的vpnkit.exe is not running错误。
  • 将qemu回退到6.2.0版本,以修复在运行模拟的amd64代码时出现的错误,如PR_SET_CHILD_SUBREAPER is unavailable
  • 已启用 contextIsolationsandbox 模式在扩展中。现在扩展在单独的上下文中运行,这通过限制对大多数系统资源的访问来限制恶意代码可能造成的损害。
  • 包含了 unpigz 以允许并行解压缩拉取的镜像。
  • 修复了与在选定容器上执行操作相关的问题。 修复 https://github.com/docker/for-win/issues/13005
  • 增加了允许您为容器或项目视图显示时间戳的功能。
  • 修复了在使用Control+C中断docker pull时可能出现的段错误。
  • 增加了默认的DHCP租约时间,以避免虚拟机网络每两小时出现故障和断开连接。
  • 移除了容器列表上的无限旋转器。 修复 https://github.com/docker/for-mac/issues/6486
  • 修复了在设置中显示已用空间值不正确的问题。
  • 修复了一个导致Kubernetes无法与containerd集成启动的错误。
  • 修复了一个导致kind无法与containerd集成启动的错误。
  • 修复了一个导致开发环境无法与containerd集成一起工作的错误。
  • 在containerd集成中实现了docker diff
  • 在containerd集成中实现了docker run —-platform
  • 修复了一个导致不安全注册表无法与containerd集成一起使用的错误。

适用于Mac

  • 修复了使用虚拟化框架用户启动失败的问题。
  • 默认情况下,重新添加了Mac上的/var/run/docker.sock,以提高与tiltdocker-py等工具的兼容性。
  • 修复了在新安装的Mac上无法创建开发环境的问题(错误信息为“无法连接到位于unix:///var/run/docker.sock的Docker守护进程。Docker守护进程是否正在运行?”)。

适用于Windows

  • 重新添加了DockerCli.exe -SharedDrives。修复了 docker/for-win#5625
  • Docker Desktop 现在允许 Docker 在禁用 PowerShell 的机器上运行。
  • 修复了在Windows上Compose v2默认不总是启用的问题。
  • Docker Desktop 现在在卸载时会删除 C:\Program Files\Docker 文件夹。

已知问题

  • 对于Mac OS上的某些用户,安装程序存在一个已知问题,该问题阻止了Docker Desktop中实验性漏洞和包发现功能所需的新辅助工具的安装。要解决此问题,需要使用以下命令创建一个符号链接:sudo ln -s /Applications/Docker.app/Contents/Resources/bin/docker-index /usr/local/bin/docker-index

4.13.1

2022-10-31

更新

Bug fixes and enhancements

适用于所有平台

  • 修复了在使用Control+CCMD+C中断docker pull时可能出现的段错误。
  • 增加了默认的DHCP租约时间,以避免虚拟机网络每两小时出现故障和断开连接。
  • Qemu回滚到6.2.0以修复在运行模拟的amd64代码时出现的错误,如PR_SET_CHILD_SUBREAPER不可用

对于Mac

  • 默认情况下,重新添加了/var/run/docker.sock符号链接在Mac上,以提高与tiltdocker-py等工具的兼容性。修复了 docker/for-mac#6529
  • 修复了在新Mac安装上无法创建开发环境并导致错误“无法在unix:///var/run/docker.sock连接到Docker守护进程。Docker守护进程是否在运行?”的问题

对于Windows

  • Docker Desktop 现在可以在禁用 PowerShell 的机器上运行。

4.13.0

2022-10-19

  • 为Docker Business用户引入了两项新的安全功能,设置管理和增强的容器隔离。了解更多关于Docker Desktop的新 强化的Docker Desktop安全模型
  • 新增了新的开发环境CLI docker dev,因此您可以通过命令行创建、列出和运行开发环境。现在更容易将开发环境集成到自定义脚本中。
  • Docker Desktop 现在可以使用 --installation-dir 安装到任何驱动器和文件夹。部分解决了 docker/roadmap#94.

更新

Bug修复和增强

适用于所有平台

  • Docker Desktop 现在允许在与 HTTP 和 HTTPS 代理通信时使用 TLS 来加密代理用户名和密码。
  • Docker Desktop 现在将 HTTP 和 HTTPS 代理密码存储在操作系统凭据存储中。
  • 如果Docker Desktop检测到HTTP或HTTPS代理密码已更改,则会提示开发者输入新密码。
  • 绕过这些主机和域的代理设置 设置现在正确处理了HTTPS的域名。
  • 远程仓库视图和每日提示现在支持需要身份验证的HTTP和HTTPS代理
  • 我们为产品开发生命周期早期阶段的功能引入了暗启动。选择加入的用户可以随时在“测试功能”部分的设置中选择退出。
  • 在扩展市场中添加了类别。
  • 在鲸鱼菜单和扩展标签上添加了一个指示器,用于显示何时有扩展更新可用。
  • 修复了在卸载没有命名空间的扩展(如'my-extension')时失败的问题。
  • 容器选项卡中明确显示端口映射。
  • 更改了磁盘使用信息的刷新频率,使其每天自动更新一次。
  • 使ContainerVolume标签的样式保持一致。
  • 修复了在设置中启用Grpcfuse文件共享模式的问题。修复了 docker/for-mac#6467
  • 对于运行macOS < 12.5的用户,虚拟化框架和VirtioFS已被禁用。
  • Containers 标签上的端口现在可以点击。
  • 扩展SDK现在允许ddClient.extension.vm.cli.execddClient.extension.host.cli.execddClient.docker.cli.exec通过options参数接受不同的工作目录并传递环境变量。
  • 在侧边栏点击扩展时,添加了一个小改进以导航到扩展市场。
  • 在市场中添加了一个徽章来识别新的扩展。
  • 修复了Kubernetes在使用containerd集成时无法启动的问题。
  • 修复了kind未从containerd集成开始的问题。
  • 修复了开发环境无法与containerd集成一起使用的问题。
  • 在containerd集成中实现了docker diff
  • 在containerd集成中实现了docker run —-platform
  • 修复了与containerd集成时不安全注册表无法工作的问题。
  • 修复了在设置中显示已用空间值不正确的问题。
  • Docker Desktop 现在从 Github 发布中安装凭证助手。参见 docker/for-win#10247, docker/for-win#12995.
  • 修复了用户在7天后被注销Docker Desktop的问题。

适用于Mac

  • 为Docker Desktop添加了隐藏隐藏其他显示全部菜单项。参见 docker/for-mac#6446
  • 修复了一个在从已安装的应用程序运行安装工具时导致应用程序被删除的错误。修复了 docker/for-mac#6442.
  • 默认情况下,Docker 不会在主机上创建 /var/run/docker.sock 符号链接,而是使用 docker-desktop CLI 上下文。

对于Linux

  • 修复了阻止从仪表板推送图像的错误

4.12.0

2022-09-01

  • 增加了使用containerd来拉取和存储镜像的能力。这是一个实验性功能。
  • Docker Desktop 现在可以运行未标记的镜像。修复了 docker/for-mac#6425.
  • 为Docker扩展的市场增加了搜索功能。修复了 docker/roadmap#346.
  • 增加了放大、缩小或将Docker Desktop设置为实际大小的功能。这可以通过在Mac和Windows上分别使用键盘快捷键⌘ + / CTRL +、⌘ - / CTRL -、⌘ 0 / CTRL 0,或通过Mac上的视图菜单来完成。
  • 如果任何相关容器可停止,则添加了compose停止按钮。
  • 现在可以从容器视图中删除单个组合容器。
  • 移除了针对Fedora 35上virtiofsd <-> qemu协议不匹配的临时解决方案,因为它不再需要。Fedora 35用户应将qemu包升级到最新版本(截至撰写时,qemu-6.1.0-15.fc35)。
  • 为容器实现了一个集成终端。
  • 默认情况下,为所有外部链接添加了一个工具提示以显示链接地址。

更新

安全

适用于所有平台

  • 修复了 CVE-2023-0626 该漏洞允许通过Electron客户端中的message-box路由的查询参数进行远程代码执行。
  • 修复了 CVE-2023-0625 该漏洞允许通过扩展描述/变更日志进行远程代码执行(RCE),可能被恶意扩展滥用。

对于Windows

  • 修复了 CVE-2023-0627,该漏洞允许绕过在4.11版本中引入的--no-windows-containers安装标志。此标志允许管理员禁用Windows容器的使用。
  • 修复了 CVE-2023-0633 其中对Docker Desktop安装程序的参数注入可能导致本地权限提升。

Bug修复和小幅改进

适用于所有平台

  • 恢复出厂设置后,Compose V2 现已启用。
  • 在新安装的Docker Desktop中,Compose V2现在默认启用。
  • Compose 中环境变量的优先级顺序更加一致,并且有明确的文档
  • 内核升级至5.10.124。
  • 改进了由于计算磁盘大小导致的整体性能问题。相关于 docker/for-win#9401.
  • Docker Desktop 现在阻止未安装 Rosetta 的 ARM Mac 用户切换回仅包含 Intel 二进制文件的 Compose V1。
  • 将默认排序顺序更改为按卷大小和创建列以及容器的启动列降序排列。
  • 重新组织了容器行操作,始终保持启动/停止和删除操作可见,同时允许通过行菜单项访问其余操作。
  • 快速入门指南现在会立即运行每个命令。
  • 定义了容器/组合状态列的排序顺序为运行中 > 部分运行中 > 暂停 > 部分暂停 > 退出 > 部分退出 > 已创建。
  • 修复了在Docker Desktop中即使有镜像,镜像列表显示为空的问题。相关于 docker/for-win#12693docker/for-mac#6347.
  • 根据是否显示系统容器来定义哪些图像“正在使用”。如果未显示与Kubernetes和扩展相关的系统容器,则相关图像不被定义为“正在使用”。
  • 修复了一个导致某些语言的Docker客户端在docker exec上挂起的错误。修复了 https://github.com/apocas/dockerode/issues/534.
  • 在构建扩展时,失败的生成命令不再导致Docker Desktop意外退出。
  • 修复了一个导致扩展在未禁用时在左侧菜单中显示为禁用的错误。
  • 修复了在启用注册表访问管理并阻止访问Docker Hub时,docker login到私有注册表的问题。
  • 修复了一个错误,即如果当前集群元数据未存储在.kube/config文件中,Docker Desktop 无法启动 Kubernetes 集群。
  • 更新了Docker Desktop和MUI主题包中的工具提示,以与整体系统设计保持一致。
  • 复制的终端内容不再包含不间断空格。

适用于Mac

  • 在macOS上安装或更新Docker Desktop的最低版本现在是10.15。修复了 docker/for-mac#6007.
  • 修复了一个错误,该错误导致托盘菜单在下载更新后错误地显示“下载即将开始...”。修复了在 for-mac/issues#5677
  • 修复了应用更新后未重新启动Docker Desktop的错误。
  • 修复了一个错误,该错误导致当用户使用virtualization.framework和限制性防火墙软件时,如果计算机进入睡眠状态,与Docker的连接会丢失。
  • 修复了一个导致Docker Desktop即使用户退出应用程序后仍在后台运行的错误。修复了 docker/for-mac##6440
  • 对于运行 macOS < 12.5 的用户,禁用了虚拟化框架和 VirtioFS

适用于Windows

4.11.1

2022-08-05

Bug fixes and enhancements

适用于所有平台

  • 修复了阻止VM系统位置(例如/var/lib/docker)被绑定挂载的回归问题 for-mac/issues#6433

对于Windows

4.11.0

2022-07-28

  • Docker Desktop 现在完全支持 VMware ESXi 和 Azure VM 中的 Docker Business 客户。有关更多信息,请参阅 在 VM 或 VDI 环境中运行 Docker Desktop
  • 新增了两个扩展( vclusterPGAdmin4)到扩展市场。
  • 扩展市场已添加了排序扩展的功能。
  • 修复了一个导致部分用户被过于频繁地请求反馈的bug。现在,您每年只会被请求两次反馈。
  • 为Docker Desktop添加了自定义主题设置。这允许您为Docker Desktop指定暗模式或亮模式,独立于您的设备设置。修复了 docker/for-win#12747
  • 为Windows安装程序添加了一个新标志。--no-windows-containers 禁用Windows容器集成。
  • 为Mac安装命令添加了一个新标志。--user 为特定用户设置Docker Desktop,防止他们在首次运行时需要管理员密码。

更新

Bug fixes and enhancements

适用于所有平台

  • 在容器屏幕上添加了容器/组合图标以及暴露的端口/退出代码。
  • 更新了Docker主题调色板的颜色值以匹配我们的设计系统。
  • 改进了当注册表访问管理阻止Docker引擎访问Docker Hub时,docker login返回的错误信息。
  • 增加了主机和Docker之间的吞吐量。例如,提高了docker cp的性能。
  • 收集诊断信息所需的时间更少。
  • 在容器概览中选择或取消选择一个compose应用程序现在会同时选择/取消选择其所有容器。
  • 容器概览图像列上的标签名称可见。
  • 在终端的滚动条上添加了搜索装饰,以便在视口之外的匹配项可见。
  • 修复了在容器页面上搜索功能不佳的问题 docker/for-win#12828.
  • 修复了导致Volume屏幕无限加载的问题 docker/for-win#12789.
  • 修复了容器UI中调整列大小或隐藏列不起作用的问题。修复了 docker/for-mac#6391.
  • 修复了一个错误,即在离开市场屏幕时,同时安装、更新或卸载多个扩展的状态会丢失。
  • 修复了关于页面中的compose版本在重启Docker Desktop后仅从v2更新到v1的问题。
  • 修复了用户因底层硬件不支持WebGL2渲染而无法查看日志视图的问题。修复了 docker/for-win#12825.
  • 修复了容器和镜像用户界面不同步的错误。
  • 修复了启用实验性虚拟化框架时的启动竞争问题。

适用于Mac

对于Windows

  • 修复了水平调整大小的问题。修复了 docker/for-win#12816.
  • 如果在用户界面中配置了HTTP/HTTPS代理,那么它会自动将来自镜像构建和运行容器的流量发送到代理。这避免了在每个容器或构建中单独配置环境变量的需要。
  • 添加了--backend=windows安装程序选项,以将Windows容器设置为默认后端。

适用于Linux

  • 修复了与设置路径中包含空格的文件共享相关的错误。

4.10.1

2022-07-05

Bug fixes and enhancements

适用于Windows

  • 修复了一个在UI中操作从WSL创建的Compose应用时失败的bug。修复了 docker/for-win#12806.

适用于Mac

  • 修复了一个由于路径未初始化导致安装命令失败的bug。修复了 docker/for-mac#6384.

4.10.0

2022-06-30

  • 现在,您可以在 Docker Desktop 中运行镜像之前添加环境变量。
  • 添加了功能,使处理容器的日志更加容易,例如正则表达式搜索和在容器仍在运行时清除容器日志的能力。
  • 实现了对容器表的反馈。添加了端口并分离了容器和镜像名称。
  • 在扩展市场中新增了两个扩展,Ddosify 和 Lacework。

已移除

  • 在重新设计时移除了主页。您可以在此提供反馈

更新

错误修复和增强功能

适用于所有平台

  • Containers标签页中增加了启动/暂停/停止选定容器的批量操作。
  • 容器标签页中为compose项目添加了暂停和重启操作。
  • 容器选项卡中添加了图标并暴露了端口或退出代码信息。
  • 现在,外部URL可以使用诸如docker-desktop://extensions/marketplace?extensionId=docker/logs-explorer-extension的链接来引用扩展市场中的扩展详情。
  • Compose 应用程序的展开或折叠状态现在被持久化。
  • docker extension CLI 命令默认在 Docker Desktop 中可用。
  • 增加了扩展市场中显示的截图的大小。
  • 修复了一个Docker扩展在其后端容器停止时无法加载的错误。修复了 docker/extensions-sdk#16.
  • 修复了图片搜索字段无故被清除的错误。修复了 docker/for-win#12738.
  • 修复了许可协议不显示并静默阻止Docker Desktop启动的错误。
  • 修复了未发布扩展的显示图像和标签,以实际显示已安装的未发布扩展的图像和标签。
  • 修复了支持屏幕上重复的页脚。
  • 可以从GitHub仓库中的子目录创建开发环境。
  • 移除了在离线使用 Docker Desktop 时无法加载每日提示的错误信息。修复了 docker/for-mac#6366.

对于Mac

  • 修复了macOS上bash完成文件位置的错误。修复了 docker/for-mac#6343.
  • 修复了一个当用户名超过25个字符时Docker Desktop无法启动的bug。修复了 docker/for-mac#6122.
  • 修复了由于系统代理配置无效导致Docker Desktop无法启动的错误。修复了在 docker/for-mac#6289中报告的一些问题。
  • 修复了在启用实验性虚拟化框架时,Docker Desktop 无法启动的错误。
  • 修复了卸载Docker Desktop后托盘图标仍然显示的错误。

对于Windows

对于Linux

  • 修复了设置无法多次应用的错误。
  • 修复了About屏幕中显示的Compose版本。

已知问题

  • 偶尔,Docker引擎会在执行docker system prune时重启。这是当前引擎中使用的buildkit版本中的一个已知问题,并将在未来的版本中修复。

4.9.1

2022-06-16

下载 Docker Desktop

Windows (校验和) | Mac with Apple chip (校验和) | Mac with Intel chip (校验和) | Debian - RPM - Arch (校验和)

Bug fixes and enhancements

适用于所有平台

4.9.0

2022-06-02

  • 在主页上添加了额外的指南,包括:Elasticsearch、MariaDB、Memcached、MySQL、RabbitMQ 和 Ubuntu。
  • 在Docker Desktop仪表板中添加了一个页脚,包含有关Docker Desktop更新状态和Docker Engine统计信息的一般信息
  • 重新设计了容器表格,增加了:
    • 一个按钮,用于将容器ID复制到剪贴板
    • 每个容器的暂停按钮
    • 容器表格的列大小调整
    • 容器表格的排序和大小调整的持久化
    • 容器表格的批量删除功能

更新

Bug修复和增强

适用于所有平台

  • 修复了一个问题,该问题导致在Docker Desktop暂停时退出应用程序会导致Docker Desktop挂起。
  • 修复了PKI过期后Kubernetes集群未正确重置的问题。
  • 修复了扩展市场未使用定义的HTTP代理的问题。
  • 改进了Docker Desktop Dashboard中的日志搜索功能,允许使用空格。
  • 仪表板中的按钮现在中键点击的行为与左键点击相同,而不是打开一个空白窗口。

适用于Mac

  • 修复了一个问题,以避免在主机上创建/opt/containerd/bin/opt/containerd/lib,如果/opt已被添加到文件共享目录列表中。

对于Windows

  • 修复了WSL 2集成中的一个错误,其中如果文件或目录被绑定挂载到容器中,并且容器退出,则该文件或目录将被替换为具有相同名称的其他类型的对象。例如,如果文件被替换为目录或目录被替换为文件,则任何尝试绑定挂载新对象的操作都会失败。
  • 修复了托盘图标和仪表板UI未显示以及Docker Desktop未完全启动的错误。修复了 docker/for-win#12622.

已知问题

适用于Linux

  • 更改绑定挂载中文件的所有权失败。这是由于我们在主机和运行Docker Engine的虚拟机之间实现文件共享的方式所致。我们计划在下一个版本中解决此问题。

4.8.2

2022-05-18

更新

Bug修复和小的改进

已知问题

对于Linux

  • 更改绑定挂载中文件的所有权失败。这是由于我们在主机和运行Docker Engine的虚拟机之间实现文件共享的方式所致。我们计划在下一个版本中解决此问题。

4.8.1

2022-05-09

Bug修复和增强功能

  • 修复了一个在更新Docker Desktop时导致Kubernetes集群被删除的错误。

已知问题

对于Linux

  • 更改绑定挂载中文件的所有权失败。这是由于我们在主机和运行Docker Engine的虚拟机之间实现文件共享的方式所致。我们计划在下一个版本中解决此问题。

4.8.0

2022-05-06

更新

Bug修复和小幅改进

适用于所有平台

  • 引入了读取系统代理的功能。除非与操作系统级别的代理不同,否则您不再需要手动配置代理。
  • 修复了在代理后面运行时仪表板中显示远程仓库的错误。
  • 修复了即使服务器已关闭,vpnkit 仍建立并阻止客户端连接的问题。参见 docker/for-mac#6235
  • 在Docker Desktop的Volume标签页上进行了改进:
    • 显示卷大小。
    • 列可以调整大小、隐藏和重新排序。
    • 列的排序顺序和隐藏状态会被保存,即使在Docker Desktop重启后。
    • 在标签页之间切换时,行选择会被保存,即使在Docker Desktop重启后。
  • 修复了开发环境选项卡中的一个错误,该错误在向屏幕添加更多项目时未添加滚动条。
  • 标准化了仪表板中的标题和操作。
  • 增加了通过HTTP代理下载注册表访问管理策略的支持。
  • 修复了当机器长时间处于睡眠模式时,与空远程仓库相关的问题。
  • 修复了一个错误,即在清理过程中,如果悬空图像的名称未标记为""但其标签是,则未选择这些图像。
  • 改进了当docker pull因需要HTTP代理而失败时的错误信息。
  • 在Docker Desktop中添加了轻松清除搜索栏的功能。
  • 将“Containers / Apps”标签重命名为“Containers”。
  • 修复了当C:\ProgramData\DockerDesktop是文件或符号链接时,Docker Desktop安装程序中的静默崩溃问题。
  • 修复了一个错误,其中没有命名空间的镜像,例如docker pull /image,会被注册表访问管理错误地阻止,除非在设置中启用了对Docker Hub的访问。

对于Mac

  • Docker Desktop的图标现在符合Big Sur风格指南。参见 docker/for-mac#5536
  • 修复了Dock图标重复和Dock图标无法正常工作的问题。修复了 docker/for-mac#6189.
  • 改进了对Cmd+Q快捷键的支持。

适用于Windows

  • 改进了对Ctrl+W快捷键的支持。

已知问题

适用于所有平台

  • 目前,如果您正在运行一个Kubernetes集群,当您升级到Docker Desktop 4.8.0时,它将被删除。我们计划在下一个版本中修复此问题。

对于Linux

  • 更改绑定挂载中文件的所有权失败。这是由于我们在主机和运行Docker Engine的虚拟机之间实现文件共享的方式所致。我们计划在下一个版本中解决此问题。

4.7.1

2022-04-19

错误修复和增强功能

适用于所有平台

  • 修复了快速入门指南最终屏幕上的崩溃问题。

对于Windows

4.7.0

2022-04-07

  • IT 管理员现在可以使用命令行远程安装 Docker Desktop。
  • 添加Docker软件物料清单(SBOM)CLI插件。新的CLI插件使用户能够为Docker镜像生成SBOM。
  • 使用 cri-dockerd 用于新的 Kubernetes 集群,而不是 dockershim。从用户的角度来看,这一变化是透明的,Kubernetes 容器仍然像以前一样在 Docker 引擎上运行。cri-dockerd 允许 Kubernetes 使用标准的 容器运行时接口 来管理 Docker 容器,这是用于控制其他容器运行时的相同接口。更多信息,请参阅 Dockershim的未来是cri-dockerd

更新

安全

Bug修复和增强

适用于所有平台

  • 修复了在失败后注册表访问管理策略从未刷新的错误。
  • 用户界面中的日志和终端现在会根据您的操作系统主题在亮色和暗色模式下进行适配。
  • 通过多选复选框轻松一次性清理多个卷。
  • 改进了登录反馈。

对于Mac

  • 修复了有时导致Docker Desktop显示空白白屏的问题。修复了 docker/for-mac#6134.
  • 修复了在使用Hyperkit时,从睡眠中唤醒后gettimeofday()性能下降的问题。修复了 docker/for-mac#3455.
  • 修复了在使用osxfs进行文件共享时,导致Docker Desktop在启动期间无响应的问题。

对于Windows

  • 修复了卷标题。修复了 docker/for-win#12616.
  • 修复了WSL 2集成中的一个错误,该错误导致在重新启动Docker Desktop或切换到Windows容器后,Docker命令停止工作。

4.6.1

2022-03-22

更新

Bug修复和增强

  • 防止了vpnkit-forwarder中的旋转填充日志的错误信息。
  • 修复了在没有设置HTTP代理时的诊断上传问题。修复了 docker/for-mac#6234.
  • 从自我诊断中移除了一个误报的“虚拟机未运行”错误。修复了 docker/for-mac#6233.

4.6.0

2022-03-14

适用于所有平台

  • Docker Desktop Dashboard 的卷管理功能现在提供了使用多选复选框高效清理卷的能力。

适用于Mac

  • Docker Desktop 4.6.0 为 macOS 用户提供了启用一种名为 VirtioFS 的新实验性文件共享技术的选项。在测试中,VirtioFS 已显示出显著减少主机和虚拟机之间同步更改所需的时间,从而带来显著的性能提升。有关更多信息,请参阅 VirtioFS

更新

适用于所有平台

安全

适用于所有平台

  • 修复了 CVE-2022-0847,也称为“脏管道”,这是一个可能使攻击者能够从容器内部修改主机上容器镜像中的文件的问题。 如果使用WSL 2后端,必须通过运行wsl --update来更新WSL 2。

对于Windows

  • 修复了 CVE-2022-26659,该漏洞可能允许攻击者在安装或更新Docker Desktop时覆盖系统上任何管理员可写的文件。

适用于Mac

Bug修复和增强

适用于所有平台

  • 修复了在设置HTTPS代理时上传诊断信息的问题。
  • 使从系统托盘菜单检查更新时打开软件更新设置部分。

对于Mac

  • 修复了启动 Docker Desktop 后系统托盘菜单未显示所有菜单项的问题。修复了 docker/for-mac#6192.
  • 修复了Docker Desktop无法在后台启动的回归问题。修复了 docker/for-mac#6167.
  • 修复了缺失的Docker Desktop Dock图标。修复了 docker/for-mac#6173.
  • 在使用实验性的virtualization.framework时,用于加速块设备访问。参见 基准测试
  • 将默认虚拟机内存分配增加到物理内存的一半(最小2 GB,最大8 GB),以提高开箱即用的性能。

对于Windows

  • 修复了尽管Docker Desktop在命令行中工作正常,但UI卡在starting状态的问题。
  • 修复了Docker Desktop系统托盘图标缺失的问题 docker/for-win#12573
  • 修复了在最新5.10.60.1内核下WSL 2的注册表访问管理问题。
  • 修复了从WSL 2环境启动的Compose应用程序选择容器时导致的UI崩溃问题。修复了 docker/for-win#12567.
  • 修复了在快速入门指南中从终端复制文本的问题。修复了 docker/for-win#12444.

已知问题

适用于Mac

  • 启用VirtioFS后,使用不同Unix用户ID运行的进程的容器可能会遇到缓存问题。例如,如果以root身份运行的进程查询一个文件,而另一个以用户nginx身份运行的进程立即尝试访问同一文件,nginx进程将收到“权限被拒绝”的错误。

4.5.1

2022-02-15

Bug修复和增强

适用于Windows

  • 修复了一个导致新安装默认使用Hyper-V后端而不是WSL 2的问题。
  • 修复了Docker Desktop Dashboard中的一个崩溃问题,该问题会导致系统托盘菜单消失。

如果您在Windows家庭版上运行Docker Desktop,安装4.5.1版本将自动将其切换回WSL 2。如果您运行的是其他版本的Windows,并且希望Docker Desktop使用WSL 2后端,您必须通过在设置 > 常规部分启用使用基于WSL 2的引擎选项来手动切换。 或者,您可以编辑位于%APPDATA%\Docker\settings.json的Docker Desktop设置文件,并手动将wslEngineEnabled字段的值切换为true

4.5.0

2022-02-10

  • Docker Desktop 4.5.0 引入了一个新版本的 Docker 菜单,该菜单在所有操作系统中创建了一致的用户体验。有关更多信息,请参阅博客文章 新的Docker菜单和Docker Desktop 4.5的改进发布亮点
  • 'docker version' 输出现在显示机器上安装的 Docker Desktop 版本。

更新

安全

对于Mac

  • 修复了 CVE-2021-44719 其中 Docker Desktop 可能被用来从容器中访问主机上的任何用户文件,绕过了允许的共享文件夹列表。

对于Windows

  • 修复了 CVE-2022-23774 其中Docker Desktop允许攻击者移动任意文件。

Bug 修复和功能增强

适用于所有平台

  • 修复了Docker Desktop在用户退出后重新启动应用程序时错误提示用户登录的问题。
  • 通过设置fs.inotify.max_user_watches=1048576fs.inotify.max_user_instances=8192增加了文件系统监视(inotify)的限制。修复了 docker/for-mac#6071

适用于Mac

  • 修复了在使用osxfs且没有与虚拟机共享主机目录时,导致虚拟机在启动期间无响应的问题。
  • 修复了一个问题,该问题不允许用户使用Docker Desktop Dashboard停止在不同版本的Docker Compose中启动的Docker Compose应用程序。例如,如果用户在V1中启动了Docker Compose应用程序,然后切换到Docker Compose V2,尝试停止Docker Compose应用程序将会失败。
  • 修复了Docker Desktop在用户退出后重新启动应用程序时错误提示用户登录的问题。
  • 修复了关于 Docker Desktop窗口无法正常工作的问题。
  • 在Mac M1上限制CPU数量为8以修复启动问题。修复了 docker/for-mac#6063.

适用于Windows

  • 修复了与使用版本2启动的compose应用程序相关的问题,但仪表板仅处理版本1

已知问题

适用于Windows

从零开始安装Docker Desktop 4.5.0存在一个错误,该错误默认Docker Desktop使用Hyper-V后端而不是WSL 2。这意味着,Windows家庭版用户将无法启动Docker Desktop,因为WSL 2是唯一支持的后端。要解决此问题,您必须从您的机器上卸载4.5.0,然后下载并安装Docker Desktop 4.5.1或更高版本。或者,您可以编辑位于%APPDATA%\Docker\settings.json的Docker Desktop settings.json文件,并手动将wslEngineEnabled字段的值切换为true

4.4.4

2022-01-24

错误修复和功能增强

适用于Windows

已知问题

适用于Windows

  • 通过浏览器登录后点击Proceed to Desktop,有时不会将仪表板带到前面。
  • 登录后,当仪表板获得焦点时,有时即使点击背景窗口,它也会保持在前台。作为解决方法,您需要在点击另一个应用程序窗口之前点击仪表板。
  • 当通过registry.json文件启用组织限制时,每周提示会显示在强制登录对话框的顶部。

4.4.3

2022-01-14

Bug fixes and enhancements

对于Windows

  • 禁用了仪表板快捷方式,以防止在最小化或未聚焦时捕获它们。修复了 docker/for-win#12495.

已知问题

对于Windows

  • 通过浏览器登录后点击Proceed to Desktop,有时不会将仪表板带到前面。
  • 登录后,当仪表板获得焦点时,有时即使点击背景窗口,它也会保持在前台。作为解决方法,您需要在点击另一个应用程序窗口之前点击仪表板。
  • 当通过registry.json文件启用组织限制时,每周提示会显示在强制登录对话框的顶部。

4.4.2

22-01-13

  • 使用Auth0和单点登录轻松、安全地登录
    • 单点登录:拥有Docker Business订阅的用户现在可以配置SSO,使用其身份提供商(IdPs)进行身份验证以访问Docker。有关更多信息,请参阅 单点登录
    • 现在登录Docker Desktop将通过浏览器进行,以便您可以从密码管理器中获得自动填充的所有好处。

升级

安全

  • 修复了 CVE-2021-45449,该漏洞影响当前使用 Docker Desktop 版本 4.3.0 或 4.3.1 的用户。

Docker Desktop 版本 4.3.0 和 4.3.1 存在一个漏洞,可能会在登录时在用户的机器上记录敏感信息(访问令牌或密码)。 这仅影响使用 Docker Desktop 4.3.0 和 4.3.1 版本的用户,并且用户在 4.3.0 和 4.3.1 版本期间登录过。获取这些数据需要访问用户的本地文件。

Bug 修复和功能增强

适用于所有平台

  • 如果registry.json中的allowedOrgs字段包含多个组织,Docker Desktop 会显示错误。如果您为不同的开发人员组使用多个组织,您必须为每个组提供一个单独的registry.json文件。
  • 修复了Compose中的一个回归问题,该问题将容器名称分隔符从-恢复为_。修复了 docker/compose-switch

对于Mac

  • 修复了仪表板中容器的内存统计信息。修复了 docker/for-mac/#4774.
  • settings.json中添加了一个已弃用的选项:"deprecatedCgroupv1": true,该选项将Linux环境切换回cgroups v1。如果您的软件需要cgroups v1,您应该更新它以兼容cgroups v2。尽管cgroups v1应该继续工作,但未来的一些功能可能会依赖于cgroups v2。此外,一些Linux内核错误可能只会在cgroups v2中得到修复。
  • 修复了在暂停Docker Desktop后将机器置于睡眠模式后,Docker Desktop无法从暂停状态恢复的问题。修复了 for-mac#6058.

适用于Windows

  • 执行Reset to factory defaults不再关闭Docker Desktop。

已知问题

适用于所有平台

  • 当通过registry.json文件启用组织限制时,每周提示会显示在强制登录对话框的顶部。

对于Windows

  • 在浏览器中登录后点击Proceed to Desktop,有时不会将仪表板带到前面。
  • 登录后,当仪表板获得焦点时,有时即使点击背景窗口,它也会保持在前台。作为解决方法,您需要在点击另一个应用程序窗口之前点击仪表板。
  • 当仪表板打开时,即使它没有焦点或被最小化,它仍然会捕获键盘快捷键(例如,ctrl-r 用于重新启动)

4.3.2

2021-12-21

安全

  • 修复了 CVE-2021-45449,该漏洞影响当前使用 Docker Desktop 版本 4.3.0 或 4.3.1 的用户。

Docker Desktop 版本 4.3.0 和 4.3.1 存在一个漏洞,可能会在用户登录时在用户的机器上记录敏感信息(访问令牌或密码)。 这仅影响使用 Docker Desktop 4.3.0 和 4.3.1 的用户,并且用户在 4.3.0 和 4.3.1 版本期间登录过。获取这些数据需要访问用户的本地文件。

升级

docker scan v0.14.0

安全

Log4j 2 CVE-2021-44228: 我们已经更新了 docker scan CLI 插件。 这个新版本的 docker scan 能够检测 Log4j 2 CVE-2021-44228Log4j 2 CVE-2021-45046

欲了解更多信息,请阅读博客文章 Apache Log4j 2 CVE-2021-44228.

4.3.1

2021-12-11

升级

docker scan v0.11.0

安全

Log4j 2 CVE-2021-44228: 我们已经为您更新了docker scan CLI插件。 Docker Desktop 4.3.0及更早版本中的旧版docker scan无法检测到 Log4j 2 CVE-2021-44228

欲了解更多信息,请阅读 博客文章 Apache Log4j 2 CVE-2021-44228.

4.3.0

2021-12-02

升级

Bug修复和小改动

适用于所有平台

对于Mac

对于Windows

  • 修复了一个问题,该问题导致如果主目录路径包含正则表达式中使用的字符,Docker Desktop 在启动时会失败。修复了 docker/for-win#12374.

已知问题

Docker Desktop Dashboard 在基于 Hyper-V 的机器上错误地将容器内存使用量显示为零。 您可以使用 docker stats 命令在命令行上作为查看实际内存使用量的解决方法。请参阅 docker/for-mac#6076.

弃用

  • 以下内部DNS名称已被弃用,并将在未来的版本中移除:docker-for-desktop, docker-desktop, docker.for.mac.host.internal, docker.for.mac.localhost, docker.for.mac.gateway.internal。您现在必须使用host.docker.internal, vm.docker.internal, 和 gateway.docker.internal
  • 已移除:自定义RBAC规则已从Docker Desktop中移除,因为它为所有服务账户授予了cluster-admin权限。修复了 docker/for-mac/#4774.

4.2.0

2021-11-09

暂停/恢复: 您现在可以在不主动使用 Docker Desktop 时暂停会话,从而节省机器上的 CPU 资源。

软件更新:现在,所有Docker订阅用户(包括Docker Personal和Docker Pro)都可以选择关闭自动检查更新功能。所有与更新相关的设置已移至软件更新部分。

窗口管理: 当你关闭并重新打开Docker Desktop时,Docker Desktop仪表板窗口的大小和位置会保持不变。

升级

Bug fixes and minor changes

适用于所有平台

  • 改进:自诊断现在还会检查主机IP与docker networks之间的重叠。
  • 修复了Docker Desktop仪表板上显示更新可用性的指示器的位置。

对于Mac

  • 修复了一个问题,该问题导致在致命错误对话框上点击退出时,Docker Desktop 停止响应。
  • 修复了一个罕见的启动失败问题,该问题影响了在主机目录上绑定挂载了docker volume的用户。如果存在,此修复还将删除相应主机目录上手动添加的DENY DELETE ACL条目。
  • 修复了一个在升级时忽略Docker.qcow2文件并使用新的Docker.raw文件,导致容器和镜像消失的错误。请注意,如果系统同时存在这两个文件(由于之前的错误),则将使用最近修改的文件,以避免最近的容器和镜像再次消失。要强制使用旧的Docker.qcow2文件,请删除较新的Docker.raw文件。修复了 docker/for-mac#5998.
  • 修复了一个在关闭期间子进程可能意外失败,触发意外致命错误弹出窗口的错误。修复了 docker/for-mac#5834.

对于Windows

  • 修复了在致命错误对话框中点击退出时,Docker Desktop 有时会挂起的问题。
  • 修复了一个问题,该问题在更新已下载但尚未应用时频繁显示下载更新弹出窗口 docker/for-win#12188.
  • 修复了安装新更新时在应用程序有时间关闭之前杀死应用程序的问题。
  • 修复:即使有组策略阻止用户启动先决服务(例如 LanmanServer),Docker Desktop 的安装现在也能正常工作 docker/for-win#12291.

4.1.1

2021-10-12

Bug修复和小改动

适用于Mac

从4.1.0升级时,Docker菜单不会更改为更新并重启,因此您可以等待下载完成(图标变化),然后选择重启。此错误已在4.1.1中修复,以便将来升级。

  • 修复了一个在升级时忽略Docker.qcow2文件并使用新的Docker.raw文件,导致容器和镜像消失的错误。如果系统中同时存在这两个文件(由于之前的错误),则将使用最近修改的文件,以避免最近的容器和镜像再次消失。要强制使用旧的Docker.qcow2文件,请删除较新的Docker.raw文件。修复了 docker/for-mac#5998.
  • 修复了Docker Desktop仪表板中设置按钮和软件更新按钮之间的更新通知覆盖有时不同步的问题。
  • 修复了安装新下载的Docker Desktop更新的菜单项。当更新准备好安装时,重新启动选项更改为更新并重新启动

对于Windows

  • 修复了WSL 2集成在某些发行版(如Arch或Alpine)中的回归问题。修复了 docker/for-win#12229
  • 修复了仪表板中设置按钮和软件更新按钮之间的更新通知覆盖有时不同步的问题。

4.1.0

2021-09-30

  • 软件更新:设置标签现在包含一个新部分,帮助您管理Docker Desktop的更新。软件更新部分在有新更新时通知您,并允许您下载更新或查看新版本中包含的信息。
  • Compose V2 您现在可以在常规设置中指定是否使用 Docker Compose V2。
  • 卷管理: 卷管理现在对所有订阅用户开放,包括Docker个人版。发布 Docker公共路线图#215

升级

Bug修复和小改动

对于Windows

  • 修复了与反恶意软件触发相关的错误,自诊断避免调用net.exe实用程序。
  • 修复了在自诊断中WSL 2 Linux虚拟机中的文件系统损坏问题。这可能是由 microsoft/WSL#5895引起的。
  • 修复了SeSecurityPrivilege需求问题。参见 docker/for-win#12037.
  • 修复了CLI上下文切换与UI的同步问题。参见 docker/for-win#11721.
  • settings.json中添加了键vpnKitMaxPortIdleTime,以允许禁用或延长空闲网络连接的超时时间。
  • 修复了退出时的崩溃问题。参见 docker/for-win#12128.
  • 修复了CLI工具在WSL 2发行版中不可用的错误。
  • 修复了从Linux切换到Windows容器时因panic.log的访问权限问题而卡住的情况。参见 for-win#11899.

已知问题

对于Windows

在某些基于WSL的发行版(如ArchWSL)上升级到4.1.0时,Docker Desktop可能无法启动。请参阅 docker/for-win#12229

4.0.1

2021-09-13

升级

  • Compose V2 RC3
    • Compose v2 现在托管在 github.com/docker/compose。
    • 修复了使用 compose up --scale 时 go panic 的问题。
    • 修复了在捕获退出代码时 compose run --rm 中的竞争条件。

Bug修复和小改动

适用于所有平台

  • 修复了Docker Desktop Dashboard中无法使用复制粘贴功能的错误。

对于Windows

  • 修复了Docker Desktop在使用Hyper-V引擎时无法正确启动的错误。参见 docker/for-win#11963

4.0.0

2021-08-31

Docker 已经 宣布 更新和扩展了产品订阅,以提高我们开发者和企业的生产力、协作和安全性。

更新后的 Docker 订阅服务协议 包括对 Docker Desktop 条款的更改。

  • Docker Desktop 仍然免费 适用于小型企业(少于250名员工且年收入少于1000万美元)、个人使用、教育和非商业开源项目。
  • 它需要付费订阅(Pro、Team 或 Business),每月只需5美元,适用于大型企业的专业用途。
  • 这些条款的生效日期为2021年8月31日。对于需要使用Docker Desktop付费订阅的用户,有一个宽限期,直到2022年1月31日。
  • Docker Pro 和 Docker Team 订阅现在包含商业用途的 Docker Desktop。
  • 现有的Docker Free订阅已更名为Docker Personal
  • 无需更改 Docker Engine 或任何其他上游的 开源 Docker 或 Moby 项目。

要了解这些变化如何影响您,请阅读 常见问题。 有关更多信息,请参阅 Docker订阅概述

升级

Bug fixes and minor changes

对于Mac

  • 修复了从git URL构建时SSH不可用的错误。修复了 for-mac#5902

对于Windows

  • 修复了CLI工具在WSL 2发行版中不可用的错误。
  • 修复了从Linux切换到Windows容器时由于panic.log的访问权限导致的错误。 for-win#11899