Mac 版 Docker 桌面 2.x 发行说明
本页包含 Docker Desktop for Mac 2.x 的发行说明。
Docker 桌面社区 2.5.0.1
2020-11-10
升级
错误修复和细微更改
- 修复了在同时安装 VirtualBox 时导致 Docker Desktop 在 MacOS 11.0 (Big Sur) 上崩溃的问题。请参阅 docker/for-mac#4997。
Docker 桌面社区 2.5.0.0
2020-11-02
Docker Desktop 2.5.0.0 包含 Kubernetes 升级。安装此版本后,您的本地 Kubernetes 集群将被重置。
新的
- 拥有付费 Docker 订阅计划的用户现在可以在 Docker Desktop 的“远程存储库”选项卡上查看漏洞扫描报告。
- Docker Desktop 为付费 Docker 订阅的用户引入了支持选项。
安全
- 修复了由于证书检查不充分导致的本地权限提升漏洞。请参阅 CVE-2021-3162。
升级
错误修复和细微更改
- 将“运行诊断”重命名为“获取支持”。
- 删除了 BlueStacks 警告消息。修复 docker/for-mac#4863。
- 在共享卷有大量文件的情况下,使容器启动速度更快。修复 docker/for-mac#4957。
- 文件共享:修复了更改只读文件的所有权的问题。修复 docker/for-mac#4989、 docker/for-mac#4964。
- 文件共享:生成
ATTRIB
inotify 事件以及MODIFY
.修复 docker/for-mac#4962。 - 文件共享:从不支持的模式
EOPNOTSUPP
返回。fallocate
修复minio
。修复 docker/for-mac#4964。 - 文件共享:修复了可能的过早文件句柄关闭问题。
- 当与容器共享 Linux 目录(
/var
、/bin
等)时,Docker Desktop 会避免监视主机文件系统中的路径。 - 当将文件共享到容器(例如
docker run -v ~/.gitconfig
)时,Docker Desktop 不会监视父目录。修复 docker/for-mac#4981、 docker/for-mac#4975。 - 修复了与 NFS 安装相关的问题。修复 docker/for-mac#4958。
- 允许符号链接指向共享卷之外。修复 docker/for-mac#4862。
- 诊断:当 Kubernetes 处于损坏状态时避免挂起。
- Docker Desktop 现在支持对共享文件系统的
S_ISUID
、S_ISGID
和S_ISVTX
调用。chmod(2)
修复 docker/for-mac#4943。
Docker桌面社区2.4.0.0
2020-09-30
Docker Desktop 2.4.0.0 包含 Kubernetes 升级。安装此版本后,您的本地 Kubernetes 集群将被重置。
新的
- Docker Compose CLI - 0.1.18,允许通过 ECS 和 ACI 将卷与 Compose 和云一起使用。
- Docker 在 Docker 仪表板中引入了新的图像视图。图像视图允许用户查看 Hub 图像、拉取它们并管理磁盘上的本地图像,包括清理不需要的和未使用的图像。要访问新的图像视图,请从 Docker 菜单中选择仪表板>图像。
- Docker Desktop 现在在重置为出厂默认设置后默认启用 BuildKit。要恢复到旧
docker build
体验,请转到“首选项” > “Docker 引擎”,然后禁用 BuildKit 功能。 - Amazon ECR 凭证助手
- 现在,当主机上有大量文件事件并且运行 Kubernetes 时,Docker Desktop 使用的 CPU 少得多,请参阅 docker/roadmap#12。
- Docker Desktop 现在默认使用 gRPC-FUSE 进行文件共享。这比 osxfs 使用的 CPU 少得多,特别是当主机上有大量文件事件时。要切换回
osxfs
,请转至首选项>常规并禁用 gRPC-FUSE。
升级
错误修复和细微更改
- macOS 10.13 上的 Docker Desktop 现已弃用。
- 删除了旧版 Kubernetes 上下文
docker-for-desktop
。docker-desktop
应该使用上下文来代替。修复 docker/for-win#5089和 docker/for-mac#4089。 - 如果 Docker 已在运行,则将应用程序添加到 Dock 并单击它将启动容器视图。
- 添加了对通过 Qemu 4.2.0 模拟 Risc-V 的支持。
- 删除了文件描述符限制 (
setrlimit
)10240
。我们现在依靠内核通过kern.maxfiles
和施加限制kern.maxfilesperproc
。 - 通过从 中删除串行控制台修复了 Mac CPU 使用错误
hyperkit
,请参阅 docker/roadmap#12。要在 VM 中打开 shell,请使用nc -U ~/Library/Containers/com.docker.docker/Data/debug-shell.sock
. - 将不带 ansi 颜色的容器日志复制到剪贴板。修复 docker/for-mac#4786。
- 修复了登录时自动启动的问题。请参阅 [docker/for-mac#4877] 和 [docker/for-mac#4890]。
- 修复了用户名太长时应用程序无法启动的错误。
/usr
修复了添加目录(例如文件共享列表)会阻止 Desktop 启动的错误。修复 docker/for-mac#4488hosts
修复了在 Docker 内指定的应用程序启动问题daemon.json
。请参阅 docker/for-win#6895- Docker Desktop 始终在容器启动时同步刷新文件系统缓存。请参阅 docker/for-mac#4943。
- Compose-on-Kubernetes 不再包含在 Docker Desktop 安装程序中。您可以从 compose-on-kubernetes 发布页面单独下载它。
已知的问题
- 使用命名卷和 gRPC FUSE 时存在一个已知问题:由于卷路径具有前缀 ,
docker-compose
第二次及后续调用将失败。要解决此问题,请切换回“设置”。请参阅 docker/for-mac#4859。docker-compose up
/host_mnt
osxfs
- 启用 Kubernetes 时存在一个已知问题,即设置 UI 无法更新 Kubernetes 状态。要解决此问题,请关闭并重新打开窗口。
- 切换用户时存在一个罕见的已知问题,即图像视图继续显示前一个用户的存储库。要解决此问题,请关闭并重新打开窗口。
Docker桌面社区2.3.0.5
2020-09-15
新的
- Docker CLI 中的新云集成让您可以使用 Amazon ECS 或 Microsoft ACI 在云中轻松运行容器。
升级
错误修复和细微更改
- 修复了登录时自动启动的问题。请参阅 docker/for-mac#4877和 docker/for-mac#4890
已知的问题
- 系统
clock_gettime64
调用返回EPERM
而不是ENOSYS
在 i386 映像中。要解决此问题,请seccomp
使用该--privileged
标志禁用。请参阅 docker/for-win#8326。
Docker桌面社区2.3.0.4
2020-07-27
升级
错误修复和细微更改
- 修复了
com.docker.vmnetd
.请参阅 CVE-2020-15360 - 修复了 Kubernetes 证书过期时的启动问题。请参阅 docker/for-mac#4594
hyperkit
修复了与 osquery之间的不兼容问题,该问题导致hyperkit
CPU 使用率过高。请参阅 docker/for-mac#3499- 仪表板:修复了有时被截断的容器日志。修复 docker/for-win#5954
Docker桌面社区2.3.0.3
2020-05-27
升级
错误修复和细微更改
- 将设备映射器重新添加到嵌入式 Linux 内核中。修复 docker/for-mac#4549。
- 已修复
hyperkit
较新的 Mac 和较新版本的Hypervisor.framework
.修复 docker/for-mac#4562。
Docker 桌面社区 2.3.0.2
2020-05-11
新的
Docker Desktop 在首次启动时引入了新的入门教程。快速入门教程指导用户通过几个简单的步骤开始使用 Docker。它包括一个简单的练习,用于构建示例 Docker 映像、将其作为容器运行、将映像推送并保存到 Docker Hub。
升级
错误修复和细微更改
- 将 Docker Desktop 安装程序的大小从 708 MB 减少到 456 MB。
- 修复了当 Kubernetes 上下文无效时容器从 UI 中消失的错误。修复 docker/for-win#6037。
- 修复了
vpnkit-bridge
.修复 docker/for-win#5841。 - 添加了从 UI 到 Edge 频道的链接。
- 使嵌入式终端可调整大小。
- 修复了如果用户名包含空格则诊断上传会失败的错误。
- 修复了 Docker UI 可以在没有引擎的情况下启动的错误。
- 从 切换到
ahci-hd
以virtio-blk
避免 AHCI 死锁,请参阅 moby/hyperkit#94和 docker/for-mac#1835。 - 修复了容器端口无法在特定主机 IP 上公开的问题。请参阅 docker/for-mac#4209。
- 从仪表板中删除了端口探测,只是无条件地显示应该可用的端口的链接。修复 docker/for-mac#4264。
- Docker Desktop 现在
/var/folders
默认共享,因为它存储每个用户的临时文件和缓存。 - 为了节省磁盘空间,Docker Desktop 中删除了 Ceph 支持。
- 修复了 2.2.0.5 中使用共享卷时的性能回归问题。修复 [docker/for-mac#4423]。
Docker桌面社区2.2.0.5
2020-04-02
错误修复和细微更改
- 删除了悬空
/usr/local/bin/docker-machine
符号链接,以避免在将来的升级中意外删除 Docker Machine 的自定义安装。请注意,如果您手动安装了 Docker Machine,则安装可能会遵循符号链接并将 Docker Machine 安装在/Applications/Docker.app
.在这种情况下,您必须在安装此版本的 Docker Desktop 后手动重新安装 Docker Machine。修复 docker/for-mac#4208。
Docker桌面社区2.2.0.4
2020-03-13
升级
错误修复和细微更改
- Kubernetes:由声明创建的持久卷现在存储在虚拟机中。修复 docker/for-win#5665。
- 修复了导致 Docker Desktop Dashboard 尝试连接到容器内所有公开端口的问题。修复 docker/for-mac#4264。
Docker桌面社区2.2.0.3
2020-02-11
升级
Docker桌面社区2.2.0.0
2020-01-21
Docker Desktop 2.2.0.0 包含 Kubernetes 升级。安装此版本后,您的本地 Kubernetes 集群将被重置。
升级
- Docker 组合 1.25.2
- 库伯内特斯 1.15.5
- Linux 内核 4.19.76
- QEMU 4.0.1
新的
Docker Desktop Dashboard:新的 Docker Desktop Dashboard提供了一个用户友好的界面,使您能够与容器和应用程序交互,并直接从 UI 管理应用程序的生命周期。此外,它还允许您访问日志、查看容器详细信息并监控资源利用率以探索容器行为。有关新仪表板 UI 的详细信息,请参阅Docker 桌面仪表板。
为 Docker 桌面首选项菜单引入了新的用户界面。
现在, “故障排除”菜单上提供了“重新启动”、“重置”和“卸载”选项。
添加了启动和停止现有基于 Compose 的应用程序以及在 Docker 桌面仪表板UI 中查看组合日志的功能。
错误修复和细微更改
fish
为 Docker Compose 的 shell添加了缺失的补全。修复 docker/for-mac#3795。- 修复了不允许用户在“首选项” > “守护程序”窗口中复制和粘贴文本的错误。修复 docker/for-mac#3798。
Expect: 100-continue
添加了对Docker API 代理中标头的支持。某些 HTTP 客户端会curl
在负载较大时(例如创建容器时)发送此标头。修复 moby/moby#39693。- 在“设置”和“故障排除”窗口中添加了加载叠加层,以防止编辑冲突。
- 当 Kubernetes 未激活时,停用重置 Kubernetes按钮。
- 改进了“设置”和“故障排除” UI中的导航。
- 修复了 UEFI 启动菜单中的一个错误,该错误有时会导致 Docker Desktop 在重新启动期间挂起。修复 docker/for-mac#2655和 docker/for-mac#3921。
- Docker Desktop 现在允许用户访问容器内主机的 SSH 代理。修复 docker/for-mac#410
- Docker Machine 不再包含在 Docker Desktop 安装程序中。您可以从Docker Machine 版本页面单独下载它 。
- 修复了导致在 macOS Catalina 的旧硬件上运行的虚拟机启动失败并出现错误 的问题
processor does not support desired secondary processor-based controls
。 - 修复了容器使用
overlay
网络时的端口转发。 - 修复了当容器具有多个带有任意或尚未配置的外部端口号的端口时容器启动错误的问题。例如,
docker run -p 80 -p 443 nginx
。修复 docker/for-win#4935和 docker/compose#6998。 - 修复了共享重叠目录时出现的问题。
- 修复了阻止用户更改虚拟机磁盘映像位置的错误。
- Docker Desktop 不再
inotify
在目录上注入事件,因为这些事件可能会导致挂载点在容器内消失。修复 docker/for-mac#3976。 - 修复了当 Kubernetes 配置文件不完整时导致 Docker Desktop 启动失败的问题。
- 修复了尝试通过 Docker Desktop 登录 Docker 有时会失败并出现错误的问题
Incorrect authentication credentials
。修复 docker/for-mac#4010。
已知的问题
当您启动 Docker Compose 应用程序,然后启动与 Compose 应用程序同名的 Docker 应用程序时,Docker Desktop 在仪表板上仅显示一个应用程序。但是,当您展开应用程序时,属于这两个应用程序的容器将显示在仪表板上。
当您在 Kubernetes 上部署具有多个容器的 Docker 应用程序时,Docker Desktop 将每个 Pod 显示为仪表板上的应用程序。
Docker桌面社区2.1.0.5
2019-11-18
Docker Desktop 2.1.0.5 包含 Kubernetes 升级。请注意,安装此版本后,您的本地 Kubernetes 集群将被重置。
升级
Docker桌面社区2.1.0.4
2019-10-21
升级
新的
Docker Desktop 现在允许您使用两步身份验证登录 Docker Hub。
Docker桌面社区2.1.0.3
2019-09-16
升级
错误修复和细微更改
- Docker Desktop 中包含的所有二进制文件现已经过公证,以便它们可以在 macOS Catalina 上运行。有关更多信息,请参阅 Mac 软件的公证要求。
Docker 桌面社区 2.1.0.2
2019-09-04
Docker Desktop 2.1.0.2 包含 Kubernetes 升级。请注意,安装此版本后,您的本地 Kubernetes 集群将被重置。
升级
Docker 桌面社区 2.1.0.1
2019-08-08
请注意,您必须登录并创建 Docker ID 才能下载 Docker Desktop。
升级
- Docker 19.03.1
- Docker 组合 1.24.1
- 库伯内特斯 1.14.3
- 在 Kubernetes 0.4.23 上编写
- Docker 机器 0.16.1
- Linuxkit v0.7
- Linux 内核 4.9.184
- 风筝学 0.17.6
- Qemu 4.0.0用于 ARM 交叉编译
- 高山3.10
- Docker 凭证助手 0.6.3
- Hyperkit v0.20190802
新的
- 在 Daemon Preferences菜单中选择“Experimental features”复选框可启用 Docker daemon 和 Docker CLI 的实验性功能。
com.docker.osxfs trace
提高了性能分析命令的可靠性。用户现在可以运行该com.docker.osxfs trace --summary
选项来获取操作的高级摘要,而不是接收所有操作的跟踪。- Docker Desktop 现在支持 Mac 上的大型 DNS 资源记录列表。修复 docker/for-mac#2160。
实验性的
实验性功能可以让您尽早使用未来的产品功能。这些功能仅用于测试和反馈,因为它们可能会在没有警告的情况下在版本之间发生变化,或者可以从未来的版本中完全删除。实验功能不得在生产环境中使用。 Docker 不提供对实验性功能的支持。
Docker Desktop Community 2.1.0.0 包含以下实验性功能。
- Docker App:Docker App 是一个 CLI 插件,可帮助配置、共享和安装应用程序。有关更多信息,请参阅 使用 Docker 应用程序。
- Docker Buildx:Docker Buildx 是一个 CLI 插件,用于使用 BuildKit 扩展构建功能。有关详细信息,请参阅构建页面。
错误修复和细微更改
- Docker Desktop 现在允许用户公开特权 UDP 端口。 docker/for-mac#3775
- 修复了如果不使用凭据助手,运行某些 Docker 命令可能会失败的问题。 docker/for-mac#3785
- 更改了主机的 kubernetes 上下文以便可以
docker run -v .kube:kube ... kubectl
正常工作。 cluster-admin
将本地 Kubernetes 集群上的角色限制为kube-system
命名空间。- 减少了 VM 启动时间。交换区并不是每次虚拟机启动时都会创建。
- 修复了带有 VPNkit 子网的 Kubernetes 安装。
- 修复了在 Windows 上收集诊断信息时进程输出未重定向到标准输出的错误,这有时会导致崩溃。
- 添加
/etc/machine-id
到虚拟机中。修复 docker/for-mac#3554。 - Docker Desktop 不会
docker-desktop.<domain>
每 10 秒发送一次 DNS 查询。它现在依赖于主机的 DNS 域搜索顺序,而不是尝试在虚拟机内复制它。 - 删除了使用电子邮件地址作为用户名登录的功能,因为 Docker 命令行不支持此功能。
- Docker Desktop 现在允许在容器内运行 Docker 注册表。修复 docker/for-mac#3611。
- 修复了 DNS 解析器的稳定性问题。
- Docker Desktop 会截断大小超过 512 字节的 UDP DNS 响应。
- 修复了启动 Kubernetes 时在本地主机上使用的端口 8080。修复 docker/for-mac#3522。
- 改进的错误消息传递:Docker Desktop 不会提示用户运行诊断,或者在不合适的情况下重置为出厂默认设置。
- Kubernetes:Docker Desktop 现在使用 kubelet 的默认最大 pod 数。 docker/for-mac#3453。
- 修复了 DockerHelper 崩溃问题。 docker/for-mac#3470。
- 修复了特权端口与指定 IP 的绑定。 docker/for-mac#3464
- 修复了诊断中的服务日志收集。
- Docker Desktop 现在聚集起来
/etc/hosts
帮助诊断。 - 当两个服务具有共同的公开端口时,Docker Desktop 现在会公开第二个服务的可用端口。 docker/for-mac#3438。
- Docker Desktop 确保 localhost 解析为 127.0.0.1。这与docker/for-mac#2990、 docker/for-mac#3383相关 。
Docker 社区版 2.0.0.3 2019-02-15
- 升级
Docker 社区版 2.0.0.2 2019-01-16
升级
- 泊坞窗 18.09.1
- Docker 机器 0.16.1
- Kubernetes 1.10.11,修复了 CVE-2018-1002105
- 风筝学 0.17.6
- Golang 1.10.6,修复了 CVE: CVE-2018-16875、 CVE-2018-16873和 CVE-2018-16874
错误修复和细微更改
- 添加18.09缺少的守护进程选项
Docker 社区版 2.0.0.0-mac81 2018-12-07
Docker 社区版 2.0.0.0-mac78 2018-11-19
升级
- 泊坞窗 18.09.0
- Docker 组合 1.23.1
- Docker 机器 0.16.0
- 风筝学 0.17.5
- Linux 内核 4.9.125
新的
- 新版本方案
弃用
- 删除了对 AUFS 的支持
- 删除了对 OSX 10.11 的支持
错误修复和细微更改
- 修复 OSX 10.14 (Mojave) 深色模式下的外观
- VPNKit:改进了端口转发的可扩展性。与docker/for-mac#2841相关
- VPNKit:限制 UDP NAT 表的大小。这可以确保即使在运行非常繁琐的 UDP 协议时,端口转发和常规 TCP 流量也能继续。
- 确保使用非默认内部 IP 子网时可以安装 Kubernetes。
- 修复诊断中的恐慌