Docker-OSX 的裸镜像变体提供了一个容器化环境,要求用户自行提供 macOS 磁盘镜像。与其他包含预装 macOS 或带有自动安装过程的变体不同,裸镜像容器专门为“自带磁盘”(BYOD)方法设计。这最大限度地提高了灵活性和定制选项,同时最大限度地减小了基础容器的大小。
本文档涵盖:
有关预装镜像的信息,请参阅 Auto Image。有关启用 VNC 的变体,请参阅 VNC Images。
裸镜像变体(sickcodes/docker-osx:naked)是 Docker-OSX 的精简版本,提供虚拟化基础设施,但不包含 macOS 磁盘镜像。它期望用户在创建容器时挂载自己的磁盘镜像。
来源:README.md209-230 Dockerfile.naked15-17
来源:Dockerfile.naked24-30 README.md1649-1672
在使用裸镜像变体之前,您需要一个有效的 macOS 磁盘镜像。有几种方法可以获取一个:
来源:README.md209-231 README.md1638-1650
使用您自己的磁盘镜像运行裸镜像容器的最小命令
以图形显示运行
来源:README.md1649-1672 Dockerfile.naked24-30
裸镜像变体支持通过环境变量进行大量配置
| 环境变量 | 默认 | 描述 |
|---|---|---|
NOPICKER | true | 当设置为 true 时跳过启动菜单。设置为 false 以显示启动菜单 |
GENERATE_UNIQUE | false | 在运行时生成随机序列号 |
GENERATE_SPECIFIC | false | 使用其他变量中提供的特定序列号 |
CPU | Penryn | 要模拟的 CPU 类型 |
内存 | 3 | RAM(GB)(也可以使用 max 或 half) |
NETWORKING | vmxnet3 | 网络适配器类型 |
HEADLESS | false | 是否以无头模式运行 |
WIDTH / HEIGHT | 1920/1080 | 屏幕分辨率(与 GENERATE_UNIQUE 或 GENERATE_SPECIFIC 一起使用) |
EXTRA | 附加的 QEMU 参数 |
来源:Dockerfile.naked119-173 README.md1357-1424
为了兼容 iCloud、iMessage 和 App Store,您可能需要生成唯一的硬件标识符
或者指定您自己的序列号
来源:README.md1281-1353 Dockerfile.naked193-216
裸镜像变体非常适合需要具有不同配置或版本的多个 macOS 环境的开发人员
适用于 CI/CD 管道中的无头构建环境
来源:README.md1428-1488 README.md1737-1751
来源:README.md999-1035 README.md262-271
裸镜像变体提供两种启动模式,由 NOPICKER 环境变量控制
NOPICKER=true,默认):跳过启动选择菜单,直接启动到 macOSNOPICKER=false):显示 OpenCore 启动菜单错误:未找到镜像
KVM 不可用
/dev/kvm显示不工作
在使用裸镜像变体的磁盘镜像之前,您可以验证其完整性
如果存在错误,您可以尝试修复它们
为了提高裸镜像容器的性能
-e EXTRA='-smp 4,sockets=2,cores=2'
-e RAM=8
-e NETWORKING=vmxnet3
来源:README.md743-747 README.md368-376
刷新此 Wiki
最后索引时间2025 年 4 月 18 日(e962dc)