告别黑苹果 !Docker-OSX:Windows11 wsl2子系统直接在 Docker 上一键部署安装 macOS 系统

功能特性

多版本 macOS 支持:从 Catalina 到最新的 Sonoma,各种 macOS 版本任你选择。
接近原生的性能:基于 KVM 技术,流畅运行大多数 macOS 应用。
图形界面支持:通过 X11 转发,在 Linux 主机上直接显示 macOS 图形界面。
远程访问:支持 SSH 连接,方便远程开发和管理。USB 设备直通:在容器中直接使用 iPhone 等 iOS 设备。
灵活存储:使用自定义磁盘镜像或预构建镜像,轻松调整系统配置。
Apple 服务集成:支持 iMessage 和 iCloud,完整体验 Apple 生态系统。
高度定制:可调整分辨率、内存、CPU 等参数,适应不同需求。
CI/CD 友好:易于集成到自动化测试和部署流程中。

这些特性使 Docker-OSX 成为跨平台开发、安全研究和 macOS 体验的理想工具。无论您的需求是什么,Docker-OSX 都能提供一个灵活高效的解决方案。

安装指南

在开始安装 Docker-OSX 之前,请确保你的系统满足以下基本要求:

  • x86_64 架构的 CPU,支持硬件虚拟化
  • 至少 20GB 可用磁盘空间(推荐 50GB 以上)
  • 至少 4GB RAM(推荐 8GB 以上)

安装步骤:

一、开启CPU虚拟化

  1. 检查CPU 虚拟化是否开启
    打开计算机任务管理器,切换到性能-CPU 查看虚拟化状态,如下图:
    在这里插入图片描述

  2. 开启步骤(已开启跳过)
    进入BIOS设置

  3. 电脑开机或重启,常见的为按“DEL”键进入BIOS界面,但也有按“ESC”、“F2”、“F1”等按键进入的电脑品牌,具体进入方法根据不同品牌电脑而不同,有些电脑在开机时屏幕会显示按什么键进入BIOS。你可以选择一个一个尝试,也可先看一下电脑主板型号,然后百度搜索“xx主板进入bios按什么键”。

  4. 进入到BIOS管理界面后,我们在管理界面中找到“Advanced”–>“CPU Configuration”菜单,点击进去后,如果是Intel CPU则找到“Intel Virtual Technology”,然后设置为“Enable”状态;如果是AMD CPU则找到“SVM Support”,然后设置为“Enable”状态。注:不同电脑的菜单存在不同的名称,开启时也可以到各自电脑品牌官网查看开启路径。

  5. 设置好后,我们按“F10”键保存并退出BIOS设置界面,然后电脑自动重启电脑,此时我们等待电脑操作系统正常启动后再进行下一步操作。

二 、启用Linux子系统

  1. 打开控制面板(开始菜单搜索“控制面板”),右上角查看方式改为“类别”,点击卸载程序,再点启用或关闭Windows功能. 如下图:
    在这里插入图片描述
    在这里插入图片描述

  2. 如下图勾选适用于Linux的子系统和虚拟机平台,确定后,重启电脑

在这里插入图片描述

三、安装Linux子系统(Ubuntu18.04.6 LTS及以上)

  1. 开始菜单搜索应用商城,搜索Ubuntu 找到 Ubuntu18.04.6 LTS (不要安装Ubuntu),点击免费下载 安装后打开输入用户名 及两次密码,安装完成。

在这里插入图片描述
2. 开启wls 虚拟机嵌套
找到C:/Users/<Your_Name>/.wslconfig 文本 <Your_Name>替换成你电脑用户名
如果没有新建个文本文档名字命名为.wslconfig ,里面加入如下内容

[wsl2]
nestedVirtualization=true

四、安装docker

下载地址:https://docs.docker.com/desktop/install/windows-install/

  1. 点击Docker Desktop for windows-x86_64 下载安装包,如下图
    在这里插入图片描述
  2. 直接安装默认安装在C:\Program Files\Docker ,如果需要安装在其他路径,需要使用命令行安装,打开终端或者CMD 切换路径到安装包路径执行以下命令
start /w "" "Docker Desktop Installer.exe"  install --installation-dir=D:\Docker 
#D:\Docker 为安装路径
  1. 出现提示时,请确保是否选中“配置”页上的“使用 WSL 2 而不是 Hyper-V”选项,(一般默认两个都勾选)
    4在这里插入图片描述

  2. 如果您的系统仅支持这两个选项之一,您将无法选择要使用的后端。

  3. 按照安装向导上的说明授权安装程序并继续安装。

  4. 安装成功后,选择 Close 以完成安装过程。

  5. 启动 docker后 修改配置
    点击右上角“齿轮”打开设置,如下图

在这里插入图片描述
7. 点击 Resoure–Advanced 修改 Disk Image localtion 镜像地址(原来默认C盘)
在这里插入图片描述
8. 借着点击WSL integration 选择之前安装的Linux子系统

在这里插入图片描述

五、启用 KVM

  1. 开始菜单搜索Ubuntu 打开Linux子系统Ubuntu-18.04
    在这里插入图片描述

  2. 在子系统里执行如下安装命令

sudo apt -y install bridge-utils cpu-checker libvirt-clients libvirt-daemon qemu qemu-kvm
  1. 验证是否安装KVM
sudo  kvm-ok

返回如下信息代表安装好了

INFO: /dev/kvm exists
KVM acceleration can be used`

六、安装X11

在Linux子系统输入如下命令

x11-appssudo apt install x11-apps -y

七、下载安装 Docker-OSX镜像

  1. 子系统里执行如下代码
docker ps

返回如下,说明子系统能正常调用docker

CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
  1. 上步骤正常后,接着执行如下代码(需一起执行,粘贴如下代码时,可先不要复制最后一行,分两次复制。一次复制,会导致分两次执行!!!)
docker run -it \
    --name macOS 
    --device /dev/kvm \
    -p 50922:10022 \
    -e "DISPLAY=${
     
     DISPLAY:-:0.0}" \
    -v /mnt/wslg/.X11-unix:/tmp/.X11-unix \
    -e GENERATE_UNIQUE=true \
    -e "MASTER_PLIST_URL=https://raw.githubusercontent.com/sickcodes/osx-serial-generator/master/config-custom.plist"
    registry.cn-hangzhou.aliyuncs.com/shrimp-images/docker-osx:ventura

以上代码会自动下载Docker-OSX镜像 并部署容器(–name macOS 可以省略 或者换成自己喜欢的名字)

这里需要访问github 读取https://raw.githubusercontent.com/sickcodes/osx-serial-generator/master/config-custom.plist 文件,建议科学上网,如没有这个条件可能导致报错,但也无需担心,这里镜像是选用的阿里云的私有镜像,镜像可以正常下载。 如果最后报错了,打开docker 发现容器部署上了,接下来可以从docker中操作,可重复多次,直到成功,失败的原因主要是访问github下载文件的问题.可等待能快速访问github的时间段再试
无法从git 下载一般会出现如下情况
在这里插入图片描述

打开docker 点击Containers 再点击新部署的容器 view details
在这里插入图片描述
点击 restart,并查看日志,如果报错就重复点击。能否成功只看能否从git下载文件。
在这里插入图片描述

3.上步骤成功后会自动启动一个qemu 窗口,安装macOS

八、安装macOS

  1. 启动qemu后会先跑一段代码,等待出现macOS 安装界面后,等待自动进入
    在这里插入图片描述

  2. 先选择最下面的Disk Utility 图标 点击 Continue 格式化磁盘(格式化的虚拟磁盘不是真磁盘)
    在这里插入图片描述

  3. 然后会看到三个磁盘,找到最大的那个磁盘 :274.88GB的那个,点击上面的Erase ,然后Name 改个名字如:MACOS ,点击Erase,格式化磁盘后,点击done,最后关闭这个Disk Utility窗口。
    在这里插入图片描述
    在这里插入图片描述

  4. 然后再选择第二个图标 Reinstall macOS Ventura(重装系统),点击Continue ,一路 Continue 和Agree
    在这里插入图片描述

  5. 然后选择刚才格式化的磁盘macOS 点Continue ,等待安装完成(显示2个小时,用不了那么久)
    在这里插入图片描述
    在这里插入图片描述

  6. 当再次出现选择界面时,点macOS install ,当然它默认就是这个选项,不点自己也会自动进入,后面就是跑代码(以下界面会出现两次)
    在这里插入图片描述
    在这里插入图片描述
    以下界面也会出现两次
    在这里插入图片描述
    在这里插入图片描述
    最后就出现系统设置界面了,这就安装成功了。
    在这里插入图片描述
    配置完的界面

  7. 设置中文 : 打开设置-通用里选择语言 ,删除英语后,重启系统。
    在这里插入图片描述
    在这里插入图片描述

  8. 关闭这个窗口就能关闭系统,下次再用,打开docker 启动容器就行了,当然 启动容器前要启动 Linux子系统。


GitHub 项目地址:https://github.com/sickcodes/Docker-OSX
或者加速镜像库https://gitcode.com/gh_mirrors/do/Docker-OSX

猜你喜欢

转载自blog.csdn.net/warlack007/article/details/142999189