适用于Apple芯片的Docker桌面

预计阅读时间:3分钟

GA发行版提供了适用于Apple芯片的Mac版Docker Desktop for Mac。这使您可以选择本地开发环境来开发应用程序,并扩展了基于ARM的应用程序的开发管道。

适用于Apple芯片的Docker桌面还支持多平台映像,这使您可以为x86和ARM架构构建和运行映像,而无需设置复杂的交叉编译开发环境。此外,您可以使用docker buildx将多平台构建无缝集成到构建管道中,并使用Docker Hub识别和共享提供多平台映像的存储库。

Docker桌面3.3.1

2021-04-15

单击以下链接下载Docker Desktop。

下载


系统要求

您必须安装Rosetta 2,因为某些二进制文件仍是Darwin / AMD64。要从命令行手动安装Rosetta 2,请运行以下命令:

softwareupdate --install-rosetta

我们希望在将来的版本中修复此问题。

已知的问题

  • 并非所有映像都可用于ARM64体系结构。您可以添加--platform linux/amd64以在仿真下运行Intel映像。特别是,mysql映像不适用于ARM64。您可以通过使用mariadb映像来解决此问题。

    但是,由于QEMU有时无法运行该容器,因此在Apple Silicon计算机上运行基于Intel的容器的尝试可能会崩溃。文件系统更改通知API(例如inotify)在QEMU仿真下不起作用,请参阅docker / for-mac#5321。因此,我们建议您在Apple Silicon计算机上运行ARM64容器。与基于Intel的容器相比,这些容器还更快并且使用的内存更少。

    随着越来越多的图像被重建以支持多种体系结构,随着时间的流逝,我们希望这个问题不会越来越普遍。

  • ping从容器内部到Internet的连接无法正常工作。要测试网络,我们建议使用curlwget。参见docker / for-mac#5322
  • 当TCP流半关闭时,用户有时可能会遇到数据丢失的情况。

自Docker Desktop RC 3起已修复

  • Docker Desktop现在确保容器内的权限/dev/null以及其他设备已正确设置为0666rw-rw-rw---privileged。修复了docker / for-mac#5527
  • Docker Desktop现在减少了空闲CPU的消耗。

自Docker Desktop RC 2起已修复

自Docker Desktop RC 1起已修复

自Docker Desktop Preview 3.1.0起修复

  • 该版本应自动更新到将来的版本。
  • HTTP代理支持正在工作,包括no_proxy通过TLS SNI支持基于域名的规则。修复了docker / for-mac#2732

自Apple Silicon Preview 7以来已修复

  • Kubernetes现在可以工作(尽管您可能需要一次在“疑难解答”菜单中重置群集以重新生成证书)。
  • osxfs文件共享有效。
  • host.docker.internalvm.docker.internalDNS条目现在解决。
  • 删除了硬编码的IP地址:Docker Desktop现在可以动态发现macOS分配的IP。
  • 更新的版本包含一项更改,可以提高磁盘性能。
  • Docker菜单中的Restart选项起作用。

反馈

您的反馈意见对我们很重要。通过在Mac版Docker桌面GitHub存储库中创建问题来让我们知道您的反馈意见。

我们还建议您加入Docker Community Slack并在#docker-desktop-mac频道中提问。

Docker桌面M1苹果