Installer MacOS sur Windows avec Docker

Pour les curieux désirant de voir à quoi ressemble MacOS sur Windows ou si vous gérez un parc de machines hétéroclites (Windows + Mac OS), il peut être pratique d’installer un environnement virtuel MacOS sur Windows pour faciliter vos dépannages. C’est possible au travers de Docker, je vous explique comment procéder dans ce tuto.

Prérequis

Pour faire tourner MacOS sur Windows avec Docker, voici les prérequis :

  • Windows 11 version 22000.XXX et ultérieur.
  • WSL2 avec Ubuntu
  • Un CPU qui supporte la virtualisation Intel VT ou AMD-V avec l’option active dans le BIOS.

Tout ceci est possible grâce au projet Docker-OSX disponible sur GitHUB !

Pour vérifier votre version de Windows, ouvrez une fenêtre Exécuter puis tapez winver.

Si vous êtes sous Windows 10, ça marche aussi en installant Windows 11 sur Hyper-V. Mais il vous faudra de bonnes performances. J’ai fait tourner l’installation sur une VM avec 16 Go de RAM et 8 cœurs, et ce n’est pas très fluide ! Vous devez aussi activer avec la virtualisation imbriquée sur votre VM. Pour cela, tapez la commande suivante dans Powershell en admin, en remplaçant VMName par le nom de votre VM Windows 11 :

Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true

Installer Ubuntu avec WSL2

WSL (Windows Subsystem for Linux) est un sous système permettant d’exécuter un environnement GNU/Linux sous Windows, sans recourir à une traditionnelle VM. Avec celui-ci, vous pouvez installer une Debian par exemple, à partir du Microsoft Store. Voici comment installer WSL2 sur Windows 11.

Ouvrez une fenêtre Powershell en Administrateur, puis tapez la commande suivante :

wsl --install

Normalement, cette commande installe par défaut Ubuntu. Si ce n’est pas le cas, et qu’elle vous affiche l’aide, vous devez installer vous-même la distribution.

Visualisez dans un premier temps les distributions disponibles :

wsl --list --online

Puis installez Ubuntu :

wsl --install -d Ubuntu

Vous pouvez ensuite confirmer l’installation de WSL avec la commande :

wsl -l -v

Dans le cas présent, la version indiquée est 1, ce qui correspond à du WSL1. Hors, il nous faut du WSL2, il faut donc migrer la distribution de WSL1 à WSL2. Pour cela, il suffit de taper la commande suivante :

wsl --set-version Ubuntu 2

Et tant qu’à faire, définir par défaut WSL2 pour toute nouvelle installation :

wsl --set-default-version 2

Vous pouvez ensuite vérifier, que votre distribution Ubuntu est bien en version 2, avec un wsl -l -v.

N’oubliez pas de relancer votre distribution Ubuntu depuis le menu démarrer.

Ensuite, naviguez dans le dossier c:\Users\<nom> ou %UserProfile% et éditez le fichier .wslconfig. S’il n’existe pas, créez-le. Renseignez-y à la fin les informations suivantes :

[wsl2]
nestedVirtualization=true

Installer KVM

Maintenant que vous avez installé Ubuntu avec WSL2, il est nécessaire de vérifier que votre installation supporte bien la virtualisation avec KVM.

Lancez une fenêtre Powershell en administrateur et tapez la commande wsl pour rentrer dans le bach de la distribution. Faites un petit update et upgrade de votre distri :

sudo apt update && sudo apt -y upgrade

Puis installez les composants requis dont qemu :

sudo apt install qemu qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virt-manager libguestfs-tools

Vérifiez si KVM peut être utilisé en tapant la commande kvm-ok. Vous devez obtenir un message KVM acceleration ca be used.

Si vous obtenez le message, Your CPU does not support KVM extensions, il faut vérifier que votre CPU soit bien compatible avec la virtualisation Intel VT ou AMD-V, et qu’elle est bien active.

Installer Docker desktop

Une fois votre envrionnent Ubuntu actif avec WSL2 et KVM, vous pouvez passer à l’installation de Docker.

Si ce n’est déjà fait, téléchargez et installez Docker pour Windows.

Après l’installation, allez dans Paramètres puis General et cochez la case Use the WSL based engine.

Allez ensuite dans RessourcesWSL Integration puis cocher Enable integration with my default WSL Distro.

Installez le package x11 et xhost dans votre distrib Ubuntu avec la commande suivante :

sudo apt install x11-apps -y
sudo apt install x11-xserver-utils
xhost +

Installer MacOS sur Windows avec Docker

Une fois les étapes précédentes réalisées, il suffit de lancer une commande pour démarrer votre MacOS dans votre environnement Windows. Par exemple, pour BigSur :

docker run -it \
    --device /dev/kvm \
    -p 50922:10022 \
	-e "DISPLAY=${DISPLAY:-:0.0}" \
	-v /mnt/wslg/.X11-unix:/tmp/.X11-unix \
    sickcodes/docker-osx:big-sur

# docker build -t docker-osx --build-arg SHORTNAME=big-sur .

Patientez le temps du téléchargement de l’image, environ 2 Go. Puis votre installation de MacOS sur votre environnement Docker et Windows va démarrer. L’installation peut être assez longue et ça peut ramer pas mal.

Une fois arrivé sur l’invite d’installation, vous devez d’abord aller dans Disk Utility pour créer la partition.

Allez sur QEMU HARDISK Media puis cliquez sur Eraze.

Donnez un nom à votre partition puis validez sur le bouton Eraze.

Une fois terminée, quittez l’utilitaire Disk Utility puis allez sur l’option Réinstall macOS Big Sur. Appuyez sur Continue, sélectionnez la partition que vous venez de créer et procéder à l’installation de MacOS sur votre environnement Windows. Armez-vous de patience, l’installation peut être assez longue, comptez bien deux heures !

Notez que vous pouvez aussi tester l’image avec Catalina préinstallé, si vous avez une bonne connexion internet (environ 20Go à télécharger).

David Jovanovic
David Jovanovic
Fondateur de Lecoindunet et rédacteur à mes heures perdues, ma passion pour l'informatique et mes expériences professionnelles m'ont permis d'acquérir de solides connaissances dans les domaines liés aux nouvelles technologies. En démarrant ma carrière comme technicien, puis en devenant développeur et responsable informatique, je fais de ma polyvalence ma force et aspire à partager mes connaissances sur le web.

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici