macinabox

macinabox

Docker-Anwendung from SpaceInvaderOne's Repository

Übersicht

Macinabox downloads and installs various macOS versions as a VM on your Unraid server. With this new version, there’s no need for additional helper scripts. It will fully automate the installation of the VM, create the XML file, and select the latest q35 available on your server. All you need to do is choose the macOS version, specify the VM storage location, ISO location, and the container will handle the rest.

Usage
  1. When run will download and install selected version of macOS as a VM if not present.
  2. If selected macOS vm is already present it will check the vms xml and fix if necessary
Variables in the container

Are you fully compliant with Apple’s EULA?
Set this to "Yes" if you are running on Apple hardware. This is the only way to be EULA compliant. If not, leave it as "No" and the container will exit.

Operating System Version:
Choose the macOS version from the options below:

  • Sequoia
  • Sonoma
  • Ventura --recommend install
  • Monterey
  • Big Sur
  • Catalina
  • Mojave
  • High Sierra

Custom VM Name:
Use this if you want the VM name to differ from the OS version. Leave blank to use the OS name.

Vdisk Type:
Set the vdisk type to either raw or qcow2.

Vdisk Size:
Specify the desired size for the vdisk.

Delete and Replace OpenCore:
Select "Yes" to delete your VM's OpenCore image and replace it with a fresh one, or "No" to keep the existing one.

Default NIC Type:
Big Sur and newer default is 'virtio-net' older macos versions it is e1000-82545em. Change this to override the default NIC type for macOS versions that support it.

VM Images Location:
Set this to your VM storage location (e.g., Domains share).

ISOs Share Location:
This is where macinabox will store the install media

Appdata Location:
Specify where you want macinabox to store its appdata.

Notes

  • If you want multiple versions of the same macOS, ensure each has a unique name in the Custom VM Name box

  • In Unraid versions below 7, custom elements in the VM template will be removed if vm template edited.. Unraid, in all versions, might also change the NIC bus and slot that macOS expects. Re-run the container to fix the edited vm template after any edits.

  • The container dynamically builds the XML template during VM installation based on settings. It checks the highest QEMU version available and uses it in the template. If you downgrade Unraid, re-run Macinabox to adjust the XML accordingly.

  • You can view container activity via logs or Unraid browser notifications, if enabled.

  • Default icon for macinbox is installed with the VM.This doesnt perist over server reboots. To restore run container again. For all macOS icons (and many other systems) please install vm_custom_icons container.

Anforderungen

On your server make sure to have notifications enabled and docker update notifications enabled. This will allow the container to send notifications as macinabox runs.

Laufzeit-Argumente

Netzwerk
bridge
Shell
sh
Privilegiert
true

Konfiguration der Vorlage

Are you fully compliant with Apple’s EULA ?Variable

Set to YES to use this container only if you are compliant with Apples EULA. To be compliant your server must be Apple Hardware (ie a Mac Pro/Mini) then the EULA states For virtualisation: “You may also install, use, and run up to two additional copies or instances of the Apple Software within virtual operating system environments on each Apple-branded computer you own or control.

Ziel
OKTORUN
Standard
NO|YES
Wert
NO
Operating System VersionVariable

Choose macOS version to instal

Ziel
flavour
Standard
Ventura|Sequoia|Sonoma|Monterey|Big Sur|Catalina|Mojave|High Sierra
Wert
Ventura
Custom VM NameVariable

Enter a different name if you want the VM to have a name other than the OS name. If left blank, the container will use the default OS name installed.

Ziel
CUSTOMNAME
Vdisk TypeVariable

Choose vdisk type raw or qcow2 (qcow2 takes less space)

Ziel
vdisktype
Standard
raw|qcow2
Wert
raw
vDisk SizeVariable

Select the size of your virtual disk (vDisk) in Gigabytes G

Ziel
vdisksize
Wert
100G
Delete and replace OpencoreVariable

Set to

Ziel
replaceopencore
Standard
no|yes
Wert
no
Defualt NIC typeVariable

Override the default NIC type for macOS versions that support it. If unsupported, it reverts to a compatible version.

Ziel
overridenic
Standard
virtio-net|e1000-82545em|virtio|vmxnet3
Wert
virtio-net
CPUARGSVariable

CPU args for VM

Standard
Skylake-Server,vendor=GenuineIntel,+hypervisor,+invtsc,kvm=on,+fma,+avx,+avx2,+aes,+ssse3,+sse4_2,+popcnt,+sse4a,+bmi1,+bmi2|Penryn,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+avx2,+aes,+fma,+fma4,+bmi1,+bmi2,+xsave,+xsaveopt,+rdrand,check|Penryn,vendor=GenuineIntel,+hypervisor,+invtsc,kvm=on,+fma,+avx,+avx2,+aes,+ssse3,+sse4_2,+popcnt,+sse4a,+bmi1,+bmi2|host,vendor=GenuineIntel,+hypervisor,+invtsc,kvm=on,+fma,+avx,+avx2,+aes,+ssse3,+sse4_2,+popcnt,+sse4a,+bmi1,+bmi2
Wert
Skylake-Server,vendor=GenuineIntel,+hypervisor,+invtsc,kvm=on,+fma,+avx,+avx2,+aes,+ssse3,+sse4_2,+popcnt,+sse4a,+bmi1,+bmi2
VM Images LocationPathrw

Please choose the storage location for your VM images on the server. The default path is set to /mnt/user/domains/

Ziel
/domains
Standard
/mnt/user/domains/
Wert
/mnt/user/domains/
Isos Share LocationPathrw

Please choose the storage location for your ISO files on the server. The default path is set to /mnt/user/isos/

Ziel
/isos
Standard
/mnt/user/isos/
Wert
/mnt/user/isos/
Appdata Location:Pathrw

Please choose the storage location for your appdata The default path is set to /mnt/user/appdata/macinabox/

Ziel
/config
Standard
/mnt/user/appdata/macinabox
Wert
/mnt/user/appdata/macinabox
macinabox versionVariable
Ziel
WHATVERSION
Standard
3
Wert
5
unraid_vm_iconsPathrw
Ziel
/icons
Wert
/usr/local/emhttp/plugins/dynamix.vm.manager/templates/images
UNRAID /usr/lib64Pathrw

Used so container can use unraid notification system during macOS creation process

Ziel
/host/usr/lib64
Standard
/usr/lib64
Wert
/usr/lib64
unraid vm icons host locactionPathrw

Location of where Unraid stores VM icons, aloowing container to use custom macOS icon

Ziel
/unraid_vm_icons
Standard
/usr/local/emhttp/plugins/dynamix.vm.manager/templates/images/
Wert
/usr/local/emhttp/plugins/dynamix.vm.manager/templates/images/
NVRAM locationPathro

NVRAM location on host. Used so container can create a unique nvram file for the macOS VM

Ziel
/etc/libvirt/qemu/nvram/
Standard
/etc/libvirt/qemu/nvram/
Wert
/etc/libvirt/qemu/nvram/
UNRIAD DOMAIN CONFIGPathrw

UNRAID domain.cfg path. Used to find VM Default network source

Ziel
/vm/domain.cfg
Standard
/boot/config/domain.cfg
Wert
/boot/config/domain.cfg
UNRAID /usr/libPathrw

Used so container can use unraid notification system during macOS creation process

Ziel
/host/usr/lib
Standard
/usr/lib
Wert
/usr/lib
UNRAID /lib64Pathrw

Used so container can use unraid notification system during macOS creation process

Ziel
/host/lib64
Standard
/lib64
Wert
/lib64
UNRAID /usr/local/emhttp/webGui/scripts/Pathrw

Used so container can use unraid notification system during macOS creation process

Ziel
/host/usr/local/emhttp/webGui/scripts/
Standard
/usr/local/emhttp/webGui/scripts/
Wert
/usr/local/emhttp/webGui/scripts/
UNRAID /usr/local/emhttp/webGui/include/Pathrw

Used so container can use unraid notification system during macOS creation process

Ziel
/host/usr/local/emhttp/webGui/include/
Standard
/usr/local/emhttp/webGui/include/
Wert
/usr/local/emhttp/webGui/include/
UNRAID /tmp/notificationsPathrw

Used so container can use unraid notification system during macOS creation process

Ziel
/host/tmp/notifications
Standard
/tmp/notifications
Wert
/tmp/notifications
UNRAID /boot/config/plugins/dynamix/Pathrw

Used so container can use unraid notification system during macOS creation process

Ziel
/host/boot/config/plugins/dynamix/
Standard
/boot/config/plugins/dynamix/
Wert
/boot/config/plugins/dynamix/
LIBVIRT LocationPathrw

LIBVIRT Location on host. Used so container can define the macOS vm

Ziel
/var/run/libvirt
Standard
/var/run/libvirt
Wert
/var/run/libvirt
UNRAID /usr/binPathrw

Used so container can use unraid notification system during macOS creation process

Ziel
/host/usr/bin
Wert
/usr/bin
UNRAID /libPathrw

Used so container can use unraid notification system during macOS creation process

Ziel
/host/lib
Standard
/lib
Wert
/lib
UNRAID docker.sockPathrw

UNRAID docker.sock. Used so container can use docker inspect to workout true locations of mapped locations to create the xml used to define the macOS VM

Ziel
/var/run/docker.sock
Standard
/var/run/docker.sock
Wert
/var/run/docker.sock

Statistik herunterladen

3,225,780
Downloads insgesamt
3,036
Dieser Monat
1,797
Durchschnittlich / Monat

Gesamte Downloads im Laufe der Zeit

Tabelle laden...

Einzelheiten

Repository
spaceinvaderone/macinabox:latest
Zuletzt aktualisiert2024-11-06
Erstmals gesehen2019-10-25

Führen Sie Macinabox auf Unraid aus.

Macinabox ist gelistet in Community Apps für Unraid OS. Erkunden Sie Unraid, um einen flexiblen Heimserver, ein NAS oder ein Heimlabor aufzubauen.