Mac 版 Docker 桌面 3.x 发行说明
此页面包含适用于 Mac 3.x 的 Docker Desktop 的发行说明。
Docker 桌面版 3.6.0
2021-08-11
新的
- 开发环境:您现在可以从本地 Git 存储库创建开发环境。
- 卷管理:您现在可以按名称、创建日期和卷大小对卷进行排序。您还可以使用“搜索”字段搜索特定卷。有关详细信息,请参阅 探索卷。
升级
- 撰写 V2 RC1
- Docker compose 命令行补全。
- 允许设置 0 规模/副本。
- 检测日志上的新容器 - 遵循。
- go1.16.7
- Docker 引擎 20.10.8
- 容器 v1.4.9
- 运行 v1.0.1
- 库伯内特斯 1.21.3
- Linux 内核 5.10.47
错误修复和细微更改
- 更新内核配置以修复 Docker Desktop 3.0.0中的性能回归问题 ,该问题导致发布容器端口的时间比旧版本长 10 倍。有关更多信息,请参阅 linuxkit/linuxkit#3701 和 docker/for-mac#5668。
- 修复了 DNS 服务器在收到意外大数据报后失败的错误。
- 修复了与硬件加速相关的问题 docker/for-mac#5121
- 修复了与 mac docker/for-mac 跳过此更新相关的问题 #5842
Docker 桌面版 3.5.2
2021-07-08
新的
开发环境预览:开发环境使您能够与团队成员无缝协作,无需在 Git 分支之间移动即可将代码转移到团队成员的计算机上。使用开发环境时,您只需单击一下即可与团队成员共享正在进行的工作,而无需处理任何合并冲突。有关如何使用开发环境的更多信息和说明,请参阅开发环境预览。
升级
compose run
命令compose exec
对 stdout 和 stderr 使用单独的流。请参阅 docker/compose-cli#1873。compose run
和compose exec
命令支持分离键。修复 docker/compose-cli#1709。- 固定
--force
并按命令--volumes
标记compose rm
。请参阅 docker/compose-cli#1844。 - 固定网络的 IPAM 配置。服务可以定义固定IP。修复 docker/compose-cli#1678和 docker/compose-cli#1816
开发环境
错误修复和细微更改
- 开发环境:修复了某些创建和删除场景中的空白屏幕。修复 开发环境#4
- 开发环境:修复了删除环境时的错误处理。修复 开发环境#8
- 开发环境:创建或删除环境时,“开始”、“停止”和“共享”按钮将被禁用。
virtualization.framework
修复了使用和不使用时的连接泄漏vpnkit
。- 修复了 iptables 更新中的虚假痕迹。
- 修复了添加多端口转发选项时的延迟。
Docker 桌面版 3.5.1
2021-06-25
新的
开发环境预览:开发环境使您能够与团队成员无缝协作,无需在 Git 分支之间移动即可将代码转移到团队成员的计算机上。使用开发环境时,您只需单击一下即可与团队成员共享正在进行的工作,而无需处理任何合并冲突。有关如何使用开发环境的更多信息和说明,请参阅开发环境预览。
Compose V2 beta:Docker Desktop 现在包含 Compose V2 的 beta 版本,它支持该docker compose
命令作为 Docker CLI 的一部分。虽然docker-compose
仍受支持和维护,但 Compose V2 实现直接依赖于作为规范的一部分进行维护的 compose-go 绑定。 Docker CLI 中的 compose 命令支持大多数docker-compose
命令和标志。预计它将成为 的直接替代品docker-compose
。还有一些剩余标志尚未实现,请参阅
docker-compose 兼容性列表,了解有关新 compose 命令中支持的标志的更多信息。如果您在使用 Compose V2 时遇到任何问题,可以通过在 Docker 桌面实验设置中进行更改或运行命令来轻松切换回 Compose v1 docker-compose disable-v2
。通过在Compose-CLI GitHub 存储库中创建问题,让我们知道您对新“compose”命令的反馈
。
错误修复和细微更改
- 修复了指向策略的链接,该策略提供了有关 Docker 如何处理上传的诊断数据的详细信息。修复 docker/for-mac#5741
Docker 桌面版 3.5.0
2021-06-23
新的
开发环境预览:开发环境使您能够与团队成员无缝协作,无需在 Git 分支之间移动即可将代码转移到团队成员的计算机上。使用开发环境时,您只需单击一下即可与团队成员共享正在进行的工作,而无需处理任何合并冲突。有关如何使用开发环境的更多信息和说明,请参阅开发环境预览。
Compose V2 beta:Docker Desktop 现在包含 Compose V2 的 beta 版本,它支持该docker compose
命令作为 Docker CLI 的一部分。虽然docker-compose
仍受支持和维护,但 Compose V2 实现直接依赖于作为规范的一部分进行维护的 compose-go 绑定。 Docker CLI 中的 compose 命令支持大多数docker-compose
命令和标志。预计它将成为 的直接替代品docker-compose
。还有一些剩余标志尚未实现,请参阅
docker-compose 兼容性列表,了解有关新 compose 命令中支持的标志的更多信息。如果您在使用 Compose V2 时遇到任何问题,可以通过在 Docker 桌面实验设置中进行更改或运行命令来轻松切换回 Compose v1 docker-compose disable-v2
。通过在Compose-CLI GitHub 存储库中创建问题,让我们知道您对新“compose”命令的反馈
。
升级
- Compose V2 测试版
- 修复了当文件绑定安装到嵌套安装点时容器无法启动的错误。修复 docker/compose-cli#1795。
- 添加了对容器链接和外部链接的支持。
- 介绍了该
docker compose logs --since --until
选项。 docker compose config --profiles
现在列出所有定义的配置文件。
- 从 Kubernetes 1.21.1到 Kubernetes 1.21.2
错误修复和细微更改
- 卷管理
- 用户现在可以使用 Docker 仪表板删除卷内的文件或目录。
- Docker 仪表板中的卷视图显示最后修改时间以及卷内内容的大小。
- 用户可以通过 Docker Dashboard 将文件和目录保存在卷内。
- 修复了导致 Docker 因
/usr/bin
不存在于PATH
.修复 docker/for-mac#5770 - Docker Desktop 现在允许在主机目录内修改文件,该目录是容器中的嵌套挂载点。修复 docker/for-mac#5748。
- 修复了导致 Docker Desktop 升级到 3.4.0 后找不到镜像和容器数据的设置迁移错误。修复 docker/for-mac#5754。
- Docker Desktop 现在突出显示了 Apple Silicon 上 Docker 仪表板中的非本机映像的架构。
- 修复了在 macOS 12 (蒙特雷) 上使用 virtualization.framework 的问题。
- 现在默认的
docker
CLI是.context
desktop-linux
- 仅在单击 Docker 菜单时显示 Docker 桌面反馈弹出窗口。
Docker 桌面版 3.4.0
2021-06-09
新的
卷管理:Docker Desktop 用户现在可以使用 Docker 仪表板创建和删除卷,还可以查看正在使用哪些卷。有关详细信息,请参阅 探索卷。
Compose V2 beta:Docker Desktop 现在包含 Compose V2 的 beta 版本,它支持该docker compose
命令作为 Docker CLI 的一部分。虽然docker-compose
仍受支持和维护,但 Compose V2 实现直接依赖于作为规范的一部分进行维护的 compose-go 绑定。 Docker CLI 中的 compose 命令支持大多数docker-compose
命令和标志。预计它将成为 的直接替代品docker-compose
。还有一些剩余标志尚未实现,请参阅
docker-compose 兼容性列表,了解有关新 compose 命令中支持的标志的更多信息。如果您在使用 Compose V2 时遇到任何问题,可以通过在 Docker 桌面实验设置中进行更改或运行命令来轻松切换回 Compose v1 docker-compose disable-v2
。通过在Compose-CLI GitHub 存储库中创建问题,让我们知道您对新“compose”命令的反馈
。
跳过 Docker Desktop 更新:现在,当系统提示安装各个 Docker Desktop 版本时,所有用户都可以跳过更新。
弃用
- Docker Desktop 不再安装 Notary。您现在可以使用Docker Content Trust进行映像签名。
升级
- Docker 引擎 20.10.7
- Docker 组合 1.29.2
- Docker Hub 工具 v0.4.1
- 撰写 CLI v1.0.16
- 库伯内特斯 1.21.1
- 容器 v1.4.6
- runc v1.0.0-rc95
- go1.16.5
错误修复和细微更改
docker run
如果 inotify 事件注入失败,则防止挂起。修复 docker/for-mac#5590。- 修复了 UI 中显示 stderr 日志的错误。修复 docker/for-mac#5688。
riscv64
修复了导致Docker Desktop 上的模拟失败的问题。修复 docker/for-mac#5699。- 通过删除卷和删除构建缓存来删除容器后自动回收空间。
- Docker Desktop 现在允许为 Docker 引擎配置空白 HTTP 代理,这将完全禁用内部 HTTP 代理。请参阅 docker/for-mac#2467。
docker-compose.yml
现在可以从 Docker Desktop 中删除文件名不同于的 Docker Compose 应用程序。修复 docker/for-win#11046- Docker Desktop 现在公开了 Apple 芯片上的主机 CPU。修复 docker/for-mac#5681。
- 避免在引擎重启时泄漏绑定到特权端口和特定 IP 的开放端口。修复 docker/for-mac#5649。
- 使用
vpnkit
withvirtualization.framework
修复 VPN 客户端(例如 Cisco AnyConnect)的连接问题。 - 修复了更新对话框窗口中缺少版本号的问题。
- 修复了有时无法从支持对话框正确上传诊断信息的问题。
*.docker.internal
修复了VM IP 更改后 Kubernetes 集群重置的DNS 条目。修复 docker/for-mac#5707、 docker/for-mac#5680、 docker/for-mac#5663和 docker/for-mac#5653。- 避免
com.docker.osxfs
在启用 gRPC FUSE 时运行。修复 docker/for-mac#5725。
已知的问题
- 在 Apple Silicon 的本机容器中
arm64
,旧版本的libssl
、debian:buster
和ubuntu:20.04
连接centos:8
到某些 TLS 服务器时会出现段错误,例如curl https://dl.yarnpkg.com
。该错误在较新版本的libssl
indebian:bullseye
、ubuntu:21.04
和中已修复fedora:35
。
Docker 桌面版 3.3.3
2021-05-06
升级
错误修复和细微更改
- 修复了无法从故障排除屏幕上传诊断信息的问题。
Docker 桌面版 3.3.2
2021-05-03
升级
错误修复和细微更改
- 修复了 Apple 芯片的一个错误,该错误导致网络传输中的最后一个字节偶尔会丢失。
metrics-port
修复了引擎中定义的阻止应用程序重新启动的错误daemon.json
。- 修复了临时端口的泄漏问题。修复 docker/for-mac#5611。
qemu
在 Apple 芯片上模拟更现代的 Intel CPU ,以获得更好的图像兼容性。请参阅 docker/for-mac#5561。- 默认启用 buildkit 垃圾收集。
- 修复了阻止绑定到端口 123 的错误。修复了 docker/for-mac#5589。
- 当没有设置上游代理时,禁用 HTTP 和 HTTPS 透明代理。修复 docker/for-mac#5572。
- 恢复到 3.2.2 中使用的 HTTP 和 HTTPS 代理实现。
- 删除了“默认将 Docker 堆栈部署到 Kubernetes”Kubernetes 设置。该组件在 2.4.0.0 中被删除,但我们忘记删除设置。修复 docker/for-mac#4966。
Docker 桌面版 3.3.1
2021-04-15
新的
Docker Desktop 现在可用于 Apple 芯片以及 Intel 芯片。这使得开发人员可以选择本地开发环境,并扩展基于 ARM 的应用程序的开发流程。有关更多信息,请参阅 适用于 Apple 芯片的 Docker Desktop。
错误修复和细微更改
Docker Desktop 现在可确保容器内的 和其他设备的权限
/dev/null
正确设置为0666
(rw-rw-rw-
) 。--privileged
修复 docker/for-mac#5527修复了由于无法与后端 Docker Hub 建立连接而导致 Docker Desktop 启动失败的问题。修复 docker/for-win#10896
采用 Apple 芯片的 Mac:Docker Desktop 现在减少了空闲 CPU 消耗。
已知的问题
苹果硅
ping
从容器内部到互联网无法按预期工作。要测试网络,我们建议使用curl
或wget
。请参阅 docker/for-mac#5322。- 当 TCP 流半关闭时,用户偶尔可能会遇到数据丢失的情况。
Docker 桌面版 3.3.0
2021-04-08
您现在可以指定何时下载并安装 Docker Desktop 更新。当有更新可用时,Docker Desktop 会显示一个图标来指示有新版本可用。您可以在方便的时候在后台下载更新。下载完成后,您只需单击“更新”并重新启动即可安装最新更新。
使用 Docker Desktop 进行专业开发的开发人员有时可能需要跳过特定更新。因此,付费 Docker 订阅的用户可以在出现提醒时跳过特定更新的通知。
对于 IT 托管环境中没有安装 Docker Desktop 更新的管理权限的开发人员来说,如果您的 Docker ID 是团队订阅的一部分,那么现在“设置”菜单中有一个选项可以选择完全退出 Docker Desktop 更新的通知。
升级
- Docker 组合 1.29.0
- 撰写 CLI v1.0.12
- Linux 内核 5.10.25
- 斯尼克 v1.461.0
- Docker Hub 工具 v0.3.1
- 容器 v1.4.4
- runc v1.0.0-rc93
错误修复和细微更改
- 修复了查看使用明确项目名称启动的撰写应用程序时的问题。修复 docker/for-win#10564。
--add-host host.docker.internal:host-gateway
修复了导致host.docker.internal
解析到错误 IP 地址的错误。请参阅 docker/for-linux#264。- 修复了导致容器间 HTTP 流量错误路由到外部 HTTP 代理的错误。修复 docker/for-mac#5476。
- 修复了调整磁盘大小时可能导致虚拟机磁盘所在文件夹中的其他文件被删除的错误。修复 docker/for-mac#5486。
- 修复了增量下载导致
Illegal instruction exception
.修复 docker/for-mac#5459。 no_proxy
对加密连接应用基于域的 HTTPS 代理规则。修复 docker/for-mac#2732。- 修复了重置为出厂默认值对话框中丢失的文本。修复 docker/for-mac#5457。
- 修复了以下问题:在主机上运行具有随机端口的容器导致 Docker Desktop 仪表板错误地使用端口 0 打开浏览器,而不是使用分配的端口。
- 修复了使用 Docker Desktop 仪表板从 Docker Hub 提取映像失败的问题。
- 删除了未使用的 DNS 名称
docker.for.mac.http.internal
。 - 启动 Linux VM 时执行文件系统检查。
- 检测 Linux 内核崩溃并将其升级给用户。
Docker 桌面版 3.2.2
2021-03-15
错误修复和细微更改
- 修复了停止容器绑定到端口 53 的问题。修复了 docker/for-mac#5416。
- 修复了在 Intel CPU 上模拟 32 位 Intel 二进制文件的问题。修复 docker/for-win#10594。
- 修复了网络连接丢失时 CPU 消耗过高和 UI 冻结的问题。修复了 for-win/#10563。
- 修复了在 iTerm2 中没有打开其他窗口时打开终端的问题。修复 docker/roadmap#98。
Docker 桌面版 3.2.1
2021-03-05
升级
错误修复和细微更改
- 修复了更新到 3.2.0 版本后有时导致 Docker Desktop 无法启动的问题。修复 docker/for-mac#5406。如果您在尝试从 3.2.0 更新到 3.2.1 时仍然遇到此问题,我们建议您卸载 3.2.0 并手动安装 Docker Desktop 3.2.1。
Docker 桌面版 3.2.0
2021-03-01
新的
- 当您启动 Docker Desktop 时,Docker 仪表板会自动打开。
- Docker 仪表板每周显示一次提示。
- Docker Desktop 使用 iTerm2 在容器上启动终端(如果已安装)。否则,它将启动默认的 Terminal.App。 Docker/路线图#98
- 添加实验性支持以使用新的 Apple 虚拟化框架(需要 macOS Big Sur 11.1 或更高版本)
- BuildKit 现在是所有用户的默认构建器,而不仅仅是新安装的用户。要关闭此设置,请转至Preferences > Docker Engine并将以下块添加到 Docker 守护程序配置文件中:
"features": {
"buildkit": false
}
升级
- Docker 引擎 20.10.3
- Docker 组合 1.28.5
- 撰写 CLI v1.0.9
- Docker Hub 工具 v0.3.0
- QEMU 5.0.1
- Amazon ECR 凭证助手 v0.5.0
- 高山3.13
- 库伯内特斯 1.19.7
- go1.16
错误修复和细微更改
- 修复了容器详细信息屏幕上滚动日志时按钮会消失的问题。修复 docker/for-mac#5290
- 修复了使用 IPv6 容器网络进行端口转发多个端口时的问题。修复 docker/for-mac#5247
docker load
修复了无法再使用 xz 存档的回归。修复 docker/for-mac#5271- 修复了容器/应用程序视图中的导航问题。修复 docker/for-win#10160
- 修复了具有长容器/图像名称的容器实例视图。修复 docker/for-mac#5290
- 修复了在特定 IP 上绑定端口时的问题。注意:命令现在可能需要一些时间才能
docker inspect
显示打开的端口。修复 docker/for-mac#4541 - 修复了从 Docker 仪表板中删除的图像仍显示在图像视图中的问题。
已知问题
Docker Desktop 更新到 3.2.0 版本后有时会无法启动。如果您遇到此问题,我们建议您卸载 3.2.0 并手动安装 Docker Desktop 3.2.1。请参阅 docker/for-mac#5406。
Docker 桌面版 3.1.0
2021-01-14
新的
- Docker 守护进程现在在基于 Debian Buster 的容器(而不是 Alpine)中运行。
升级
错误修复和细微更改
- 修复了用户批量创建或删除大量对象时的 UI 可靠性问题。
- 修复了 Alpine 容器中 DNS 地址解析的问题。修复 docker/for-mac#5020。
- 重新设计了支持UI 以提高可用性。
Docker 桌面版 3.0.4
2021-01-06
升级
错误修复和细微更改
docker-compose up
通过加快缓存失效速度来避免超时。修复 docker/for-mac#4957。- 避免在使缓存失效时生成虚假文件系统 DELETE 事件。修复 docker/for-mac#5124。
已知的问题
- 某些 DNS 地址无法在基于 Alpine Linux 3.13 的容器内解析。请参阅 docker/for-mac#5020。
Docker 桌面版 3.0.3
2020-12-21
错误修复和细微更改
- 修复了导致重叠卷安装失败的问题。修复 docker/for-mac#5157。但是,由于此更改,docker/for-mac#4957和 docker/for-mac#5124的修复 已恢复,因此这些问题现在再次出现。
已知的问题
- 某些 DNS 地址无法在基于 Alpine Linux 3.13 的容器内解析。请参阅 docker/for-mac#5020。
- 如果启动了多个服务,则 docker-compose up 期间可能会出现超时。请参阅 docker/for-mac#4957和 docker/for-mac#5124。
Docker 桌面版 3.0.2
2020-12-18
### 错误修复和细微更改
docker-compose up
通过加快缓存失效速度来避免超时。修复 docker/for-mac#4957。- 避免在使缓存失效时生成虚假文件系统 DELETE 事件。修复 docker/for-mac#5124。
- 现在可以
~/Library
与容器共享目录(Docker Desktop 数据目录除外)。修复 docker/for-mac#5115。 Home
如果您创建共享目录或用户Library
目录的容器,您现在将看到性能警告弹出消息。
已知的问题
- 某些 DNS 地址无法在基于 Alpine Linux 3.13 的容器内解析。请参阅 docker/for-mac#5020。
Docker 桌面版 3.0.1
2020-12-11
错误修复和细微更改
- 修复了导致某些目录无法安装到容器中的问题。修复 docker/for-mac#5115。请参阅下面的已知问题。
已知的问题
- 目前无法将挂载文件绑定
~/Libary
到容器中。请参阅 docker/for-mac#5115。 - 使用 form 时,使用 BuildKit 从 git URL 构建图像失败
github.com/org/repo
。要解决此问题,请使用表单git://github.com/org/repo
。 - 某些 DNS 地址无法在基于 Alpine Linux 3.13 的容器内解析。请参阅 docker/for-mac#5020。
Docker桌面3.0.0
2020-12-10
新的
Docker Desktop 版本使用三位数版本号。
从 Docker Desktop 3.0.0 开始,更新现在要小得多,因为它们将使用增量补丁来应用。
第一个版本
docker compose
(作为现有版本的替代品docker-compose
)。支持一些基本命令,但尚不支持完整功能docker-compose
。支持以下子命令:
up
,down
,logs
,build
,pull
,push
,ls
,ps
支持基本卷、绑定挂载、网络和环境变量
通过在compose-cli GitHub 存储库中创建问题来让我们了解您的反馈 。
升级
错误修复和细微更改
- 将内核降级至 4.19.121,以降低hyperkit的CPU使用率。修复 docker/for-mac#5044
- 使用时避免缓存错误的文件大小和模式
osxfs
。修复 docker/for-mac#5045。 - 修复了一个可能的文件共享错误,即在主机上修改文件时,容器中的文件可能看起来大小错误。这是docker/for-mac#4999的部分修复 。
- 删除了不必要的日志消息,这些消息会减慢文件系统事件注入的速度。
- 重新启用实验性 SOCKS 代理。修复 docker/for-mac#5048。
- 修复了尝试使用 启动不存在的容器时出现意外的 EOF 错误
-v /var/run/docker.sock:
。请参阅 docker/for-mac#5025。 - 当应用程序需要对特定目录进行写访问时,显示错误消息而不是崩溃。请参阅 docker/for-mac#5068
已知的问题
- 使用 form 时,使用 BuildKit 从 git URL 构建图像失败
github.com/org/repo
。要解决此问题,请使用表单git://github.com/org/repo
。 - 某些 DNS 地址无法在基于 Alpine Linux 3.13 的容器内解析。