Docker Desktop for Apple silicon
预计阅读时间:3分钟
Apple 芯片上的 Docker Desktop for Mac 现已作为 GA 版本提供. 这使您能够使用您选择的本地开发环境来开发应用程序,并为基于 ARM 的应用程序扩展开发管道.
适用于 Apple 芯片的 Docker Desktop 还支持多平台映像,允许您为 x86 和 ARM 架构构建和运行映像,而无需设置复杂的交叉编译开发环境. 此外,您可以使用docker buildx将多平台构建无缝集成到构建管道中,并使用Docker Hub识别和共享提供多平台映像的存储库.
在 Apple 芯片上下载 Docker Desktop for Mac:
下载 Docker 桌面
System requirements
从 Docker Desktop 4.3.0 开始,我们删除了安装Rosetta 2的硬性要求. 在使用 Darwin/AMD64 时,有一些可选的命令行工具仍然需要 Rosetta 2. 请参阅下面的已知问题部分. 但是,为了获得最佳体验,我们建议您安装 Rosetta 2.要从命令行手动安装 Rosetta 2,请运行以下命令:
$ softwareupdate --install-rosetta
Known issues
- 未安装 Rosetta 2 时,某些命令行工具不起作用.
-
docker-compose
的旧版本 1.x. 我们建议您改用 Compose V2. 键入docker compose
或在General 首选项选项卡中启用Use Docker Compose V2选项. - docker
docker scan
命令和底层的snyk
二进制文件. -
docker-credential-ecr-login
凭证助手.
-
-
并非所有映像都可用于 ARM64 架构. 您可以添加
--platform linux/amd64
以在仿真下运行 Intel 映像. 特别是mysql映像不适用于 ARM64. 您可以使用mariadb映像解决此问题.但是,尝试在模拟的 Apple 硅机器上运行基于 Intel 的容器可能会崩溃,因为 qemu 有时无法运行容器. 此外,文件系统更改通知 API (
inotify
) 在 qemu 仿真下不起作用. 即使容器确实在仿真下正确运行,它们也会比原生容器更慢并且使用更多内存.总之,在基于 Arm 的机器上运行基于 Intel 的容器应该被视为"尽力而为". 我们建议尽可能在 Apple 硅机器上运行 arm64 容器,并鼓励容器作者制作其容器的 arm64 或多架构版本. 随着越来越多的镜像被重建以支持多种架构,我们预计这个问题会随着时间的推移而变得不那么普遍.
- 从容器内部
ping
到 Internet 没有按预期工作. 要测试网络,我们建议使用curl
或wget
. 请参阅docker/for-mac#5322 . - 当 TCP 流半关闭时,用户可能偶尔会遇到数据丢失的情况.
Fixes since Docker Desktop RC 3
- Docker Desktop 现在确保
/dev/null
和其他设备的权限在--privileged
容器内正确设置为0666
(rw-rw-rw-
). 修复docker/for-mac#5527 . - Docker Desktop 现在减少了空闲 CPU 消耗.
Fixes since Docker Desktop RC 2
- 更新到Linux 内核 5.10.25以提高可靠性.
Fixes since Docker Desktop RC 1
- 现在可以正确路由容器间 HTTP 和 HTTPS 流量. 修复docker/for-mac#5476 .
Fixes since Docker Desktop preview 3.1.0
- 构建应该会自动更新到未来的版本.
- HTTP 代理支持正在运行,包括通过 TLS SNI 支持基于域名的
no_proxy
规则. 修复docker/for-mac#2732 .
Fixes since the Apple Silicon preview 7
- Kubernetes 现在可以工作了(尽管您可能需要在我们的疑难解答菜单中重置集群一次以重新生成证书).
- osxfs 文件共享工作.
- 现在解析
host.docker.internal
和vm.docker.internal
DNS 条目. - 删除了硬编码的 IP 地址:Docker Desktop 现在动态发现 macOS 分配的 IP.
- 更新后的版本包含一个可以提高磁盘性能的更改.
- Docker 菜单中的Restart选项有效.
Feedback
您的反馈意见对我们很重要. 通过在Docker Desktop for Mac GitHub存储库中创建问题,让我们知道您的反馈.
我们还建议您加入Docker 社区 Slack并在#docker-desktop-mac频道中提问.
码头工人桌面, M1, Silicon, Apple