OSX (macOS) inside a Docker container.
Find a file
2024-06-02 22:11:04 +02:00
.github feat: first commit 2024-06-02 20:25:49 +02:00
src feat: Print QEMU version on boot 2024-06-02 21:54:02 +02:00
.dockerignore fix: Delete ISO when extraction fails (#372) 2024-04-13 16:58:04 +02:00
.gitignore build: Initial Dockerfile (#3) 2024-01-14 14:41:19 +01:00
compose.yml feat: Add link to image 2024-06-02 21:48:42 +02:00
Dockerfile build: Update qemu-docker to v5.10 2024-06-02 21:44:25 +02:00
kubernetes.yml fix: VNC port in Kubernetes 2024-06-02 21:50:07 +02:00
license.md Create license.md 2024-01-14 17:17:26 +01:00
readme.md docs: Readme 2024-06-02 22:11:04 +02:00

OSX

OSX inside a Docker container.

Features

  • KVM acceleration
  • Image downloader
  • Web-based viewer

Usage

Via Docker Compose:

services:
  osx:
    image: dockurr/osx
    container_name: osx
    environment:
      VERSION: "ventura"
    devices:
      - /dev/kvm
    cap_add:
      - NET_ADMIN
    ports:
      - 8006:8006
      - 5900:5900/tcp
      - 5900:5900/udp
    stop_grace_period: 2m

Via Docker CLI:

docker run -it --rm -p 8006:8006 --device=/dev/kvm --cap-add NET_ADMIN --stop-timeout 120 dockurr/osx

Via Kubernetes:

kubectl apply -f kubernetes.yml

FAQ

  • How do I use it?

    Very simple! These are the steps:

    • Start the container and connect to port 8006 using your web browser.

    • Select macOs Base System with your keyboard to begin the installation.

    • Select Disk Utility and then select the QEMU HARDDISK Media that has the size you specified.

    • Click Erase to format the disk, you can give it any name you want.

    • When finished, go back by closing the window and then proceed the installation by clicking Reinstall macOS <version>.

    • When prompted where to install it, select the disk you created.

    • Once you see the desktop, your OSX installation is ready for use.

    Enjoy your brand new machine, and don't forget to star this repo!

  • How do I select the OSX version?

    By default, Ventura will be installed. But you can add the VERSION environment variable to your compose file, in order to specify an alternative OSX version to be downloaded:

    environment:
      VERSION: "ventura"
    

    Select from the values below:

    Value Version Size
    high-sierra High Sierra ? GB
    mojave Mojave ? GB
    catalina Catalina ? GB
    big-sur Big Sur ? GB
    monterey Monterey ? GB
    ventura Ventura 3 GB
    sonoma Sonoma ? GB

Acknowledgements

Special thanks to OSX-KVM and qemu-docker. This would not exist without their invaluable work.

Disclaimer

The product names, logos, brands, and other trademarks referred to within this project are the property of their respective trademark holders. This project is not affiliated, sponsored, or endorsed by Apple Inc.