已知问题



  • Docker Desktop 尚不支持 IPv6。
  • Mac 活动监视器报告 Docker 使用的内存量是其实际使用的内存量的两倍。这是由于 MacOS 中的一个错误。我们已经就此写了一份详细的报告

  • 从中强行弹出 after running 可能会导致 鲸鱼图标变得无响应,Docker 任务显示为无响应 活动监视器,并且某些进程会消耗大量 CPU 资源。重新启动并重新启动 Docker 以解决这些问题。.dmgDocker.app

  • Docker 在登录后不会自动启动,即使在 Settings 中启用也是如此。这与 Docker 帮助程序、注册和版本控制的一系列问题有关。

  • Docker Desktop 使用虚拟机管理程序 ( https://github.com/docker/hyperkit) 在 macOS 10.10 Yosemite 及更高版本中。如果 您正在使用 与 冲突的工具进行开发,例如 Intel Hardware Accelerated Execution Manager (HAXM)、 当前的解决方法是不要同时运行它们。在使用 HAXM 时,您可以通过暂时退出 Docker Desktop 来暂停。 这使您可以继续使用其他工具并防止干扰。HyperKitHyperKitHyperKitHyperKit

  • 如果您正在使用 Apache 等应用程序 需要设置和环境变量的 Maven,请指定这些以连接到 Docker 实例。例如:DOCKER_HOSTDOCKER_CERT_PATH

    $ export DOCKER_HOST=unix:///var/run/docker.sock
    
  • 绑定挂载的目录的性能存在许多问题 放入容器中。特别是,小块的写入和大 目录当前运行缓慢。此外,执行大型 目录操作数,例如重复扫描大型目录 树木,可能会表现不佳。以这种方式运行的应用程序 包括:

    • rake
    • ember build
    • Symfony 餐厅
    • Magento
    • Zend 框架
    • 使用 Composer 安装的 PHP 应用程序 文件夹中的依赖项vendor

    作为此行为的解决方法,您可以将 vendor 或第三方库 目录中的 Docker 卷中,执行临时文件系统操作 在绑定挂载之外,并使用 Unison 或 在容器目录和绑定挂载目录之间同步。我们是 使用许多不同的 技术。要了解更多信息,请参阅我们路线图上的主题rsync

  • 在本机容器中的 Apple Silicon 上,旧版本(如 、 和 )在连接到某些 TLS 服务器(例如 .该 bug 已在 、 和 的较新版本中修复。arm64libssldebian:busterubuntu:20.04centos:8curl https://dl.yarnpkg.comlibssldebian:bullseyeubuntu:21.04fedora:35

  • 未安装 Rosetta 2 时,某些命令行工具不起作用。

    • 的旧版本 1.x 。请改用 Compose V2 - 键入 。docker-composedocker compose
    • 凭据帮助程序。docker-credential-ecr-login
  • 某些镜像不支持 ARM64 体系结构。您可以使用仿真添加以运行 (或构建) Intel 镜像。--platform linux/amd64

    但是,尝试在仿真的 Apple Silicon 计算机上运行基于 Intel 的容器可能会崩溃,因为 qemu 有时无法运行容器。此外,文件系统更改通知 API () 在 qemu 仿真下不起作用。即使容器在仿真下正常运行,它们也会比本机等效容器更慢,并且使用的内存更多。inotify

    总之,在基于 Arm 的机器上运行基于 Intel 的容器应仅被视为 “尽力而为”。我们建议尽可能在 Apple Silicon 计算机上运行 arm64 容器,并鼓励容器作者生成其容器的 arm64 或多架构版本。随着时间的推移,这个问题应该会变得不那么常见,因为越来越多的镜像被重新构建以支持多种架构

  • ping从容器内部到 Internet 无法按预期工作。要测试网络,请使用 或 。请参阅 docker/for-mac#5322curlwget

  • 当 TCP 流半关闭时,用户可能偶尔会遇到数据丢失的情况。