dockur / macos

OSX (macOS) inside a Docker container.
MIT License
9k stars 326 forks source link

Clean install of macOS ventura does not boot #93

Open HabaneroGabe opened 1 month ago

HabaneroGabe commented 1 month ago

Operating system

qnap QTS 5.1.8.2823

Description

Got this far: Start the container and connect to port 8006 using your web browser.

Choose Disk Utility and then select the largest Apple Inc. VirtIO Block Media disk.

Click the Erase button to format the disk, and give it any recognizable name you like.

Close the current window and proceed the installation by clicking Reinstall macOS.

When prompted where you want to install it, select the disk you just created previously.

After this, macOS reboot and then fails to boot.

Docker compose

services: macos: image: dockurr/macos container_name: macos environment: VERSION: "ventura" DISK_SIZE: "256G" devices:

Docker log

3h3h3hBdsDxe: failed to load Boot0080 "Mac OS X" from PciRoot(0x0)/Pci(0xA,0x0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,73000BF5A000AF4981E0DC65C47DA08D)/\0FACE32B-8D7C-4441-AA96-4636CD07E251\System\Library\CoreServices\boot.efi: Not Found BdsDxe: failed to load Boot0001 "UEFI Misc Device" from PciRoot(0x0)/Pci(0xA,0x0): Not Found BdsDxe: loading Boot0002 "UEFI Misc Device 2" from PciRoot(0x0)/Pci(0x5,0x0) BdsDxe: starting Boot0002 "UEFI Misc Device 2" from PciRoot(0x0)/Pci(0x5,0x0)

[EB|LOG:EXITBS:END] _

[EB.BST.FBS|-]

[EB|B:BOOT]

[EB|LOG:HANDOFF TO XNU] _

======== End of efiboot serial output. ========

Screenshots (optional)

No response

kroese commented 1 month ago

Can you see if it makes a difference if you add:

environment:
  CPU_CORES: "1"
HabaneroGabe commented 1 month ago

Thanks, but it didn’t help. Same problem. ☹

Thanks,

Gabriel

From: Kroese @.> Sent: Saturday, October 12, 2024 12:36 PM To: dockur/macos @.> Cc: HabaneroGabe @.>; Author @.> Subject: Re: [dockur/macos] Clean install of macOS ventura does not boot (Issue #93)

Can you see if it makes a difference if you add:

environment:

CPU_CORES: "1"

— Reply to this email directly, view it on GitHubhttps://github.com/dockur/macos/issues/93#issuecomment-2408638038, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ATH2Q3LYL75WRCAMEQM3TU3Z3FMZLAVCNFSM6AAAAABPXXRZ42VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMBYGYZTQMBTHA. You are receiving this because you authored the thread.Message ID: @.**@.>>

kroese commented 1 month ago

The QNAP version of Docker works really strange with permissions for volumes. Did you create the folder /Docker/macos yourself? Because it must be created by container manager otherwise you will get issues. Does it work when you specify no volumes at all?

HabaneroGabe commented 1 month ago

I created the path myself like did with my other dockers. Not sure why this one would be different. But i can try it to see if it makes a difference. Initially i accidently created the docker without volumes. The setup booted, but had no room to or volumes to download image too.

kroese commented 1 month ago

I know from other issues of my containers (like this one: )https://github.com/vdsm/virtual-dsm/issues/224#issuecomment-1563495373 that if you create the path yourself on QNAP it will not work:

"The way this works on qnap is exposing a volume through qnap container station. That volume has the right permissions set for docker to be able to read/write from the container. Connecting that specific volume to the /storage directory in the container solves the permission problems."

So that is why I am bit suspicious when I hear the name QNAP in combination with this container.

HabaneroGabe commented 1 month ago

I appreciate your suggestion. This time I did not create the path myself. Unfortunately, the macOS still crashes with the same error. ☹

❯ Starting macOS for Docker v1.14... 2 ❯ For support visit https://github.com/dockur/macos 3 ❯ CPU: Intel Celeron CPU J1800 | RAM: 11/16 GB | DISK: 2934 GB (ext4) | HOST: 5.10.60-qnap... 4 5 ❯ Downloading macOS Ventura recovery image... 6 Downloading 042-23155... 7 Saving http://oscdn.apple.com/content/downloads/28/14/042-23155/4rscm4lvp3084gutfgpkwj5eex0yyxmzkt/RecoveryImage/BaseSystem.chunklist to /storage/tmp/BaseSystem.chunklist... 8

100.0% downloaded 9 Download complete! 10 Saving http://oscdn.apple.com/content/downloads/28/14/042-23155/4rscm4lvp3084gutfgpkwj5eex0yyxmzkt/RecoveryImage/BaseSystem.dmg to /storage/tmp/BaseSystem.dmg... 11

1.0% downloaded 2.1% downloaded 3.1% downloaded 4.1% downloaded 5.2% downloaded 6.2% downloaded 7.2% downloaded 8.3% downloaded 9.3% downloaded 10.3% downloaded 11.4% downloaded 12.4% downloaded 13.4% downloaded 14.5% downloaded 15.5% downloaded 16.5% downloaded 17.6% downloaded 18.6% downloaded 19.6% downloaded 20.6% downloaded 21.7% downloaded 22.7% downloaded 23.7% downloaded 24.8% downloaded 25.8% downloaded 26.8% downloaded 27.9% downloaded 28.9% downloaded 29.9% downloaded 31.0% downloaded 32.0% downloaded 33.0% downloaded 34.1% downloaded 35.1% downloaded 36.1% downloaded 37.2% downloaded 38.2% downloaded 39.2% downloaded 40.3% downloaded 41.3% downloaded 42.3% downloaded 43.4% downloaded 44.4% downloaded 45.4% downloaded 46.5% downloaded 47.5% downloaded 48.5% downloaded 49.6% downloaded 50.6% downloaded 51.6% downloaded 52.7% downloaded 53.7% downloaded 54.7% downloaded 55.8% downloaded 56.8% downloaded 57.8% downloaded 58.9% downloaded 59.9% downloaded 60.9% downloaded 61.9% downloaded 63.0% downloaded 64.0% downloaded 65.0% downloaded 66.1% downloaded 67.1% downloaded 68.1% downloaded 69.2% downloaded 70.2% downloaded 71.2% downloaded 72.3% downloaded 73.3% downloaded 74.3% downloaded 75.4% downloaded 76.4% downloaded 77.4% downloaded 78.5% downloaded 79.5% downloaded 80.5% downloaded 81.6% downloaded 82.6% downloaded 83.6% downloaded 84.7% downloaded 85.7% downloaded 86.7% downloaded 87.8% downloaded 88.8% downloaded 89.8% downloaded 90.9% downloaded 91.9% downloaded 92.9% downloaded 94.0% downloaded 95.0% downloaded 96.0% downloaded 97.1% downloaded 98.1% downloaded 99.1% downloaded 100.0% downloaded 12 Download complete! 13 Verifying image with chunklist... 14

Chunk 10 (10485760 bytes) Chunk 20 (10485760 bytes) Chunk 30 (10485760 bytes) Chunk 40 (10485760 bytes) Chunk 50 (10485760 bytes) Chunk 60 (10485760 bytes) 15 Image verification complete! 16 ❯ Creating a 256G growable disk image in raw format... 17 ❯ Extracting boot image... 18 ❯ Booting macOS 1920x1080 using QEMU v9.1.0... 19 3h3h3hBdsDxe: failed to load Boot0001 "UEFI Misc Device" from PciRoot(0x0)/Pci(0xA,0x0): Not Found 20 BdsDxe: loading Boot0002 "UEFI Misc Device 2" from PciRoot(0x0)/Pci(0x5,0x0) 21 BdsDxe: starting Boot0002 "UEFI Misc Device 2" from PciRoot(0x0)/Pci(0x5,0x0) 22

[EB|LOG:EXITBS:END] _

23

[EB.BST.FBS|-]

24

[EB|B:BOOT]

25

[EB|LOG:HANDOFF TO XNU] _

26 ======== End of efiboot serial output. ========

Thanks,

Gabriel

From: Kroese @.> Sent: Thursday, October 17, 2024 5:42 PM To: dockur/macos @.> Cc: HabaneroGabe @.>; Author @.> Subject: Re: [dockur/macos] Clean install of macOS ventura does not boot (Issue #93)

I know from other issues of my containers (like this one: )vdsm/virtual-dsm#224 (comment)https://github.com/vdsm/virtual-dsm/issues/224#issuecomment-1563495373 that if you create the path yourself on QNAP it will not work:

"The way this works on qnap is exposing a volume through qnap container station. That volume has the right permissions set for docker to be able to read/write from the container. Connecting that specific volume to the /storage directory in the container solves the permission problems."

So that is why I am bit suspicious when I hear the name QNAP in combination with this container.

— Reply to this email directly, view it on GitHubhttps://github.com/dockur/macos/issues/93#issuecomment-2420742943, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ATH2Q3M427ITLQR7GIMIJADZ4A4MRAVCNFSM6AAAAABPXXRZ42VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMRQG42DEOJUGM. You are receiving this because you authored the thread.Message ID: @.**@.>>

Taxicletter commented 1 month ago

I think I have the same error. I don't have any volumes in the compose file (as I didn't saw it mentioned as necessary in the example file) I can install, after installation it boots with an error like you restarted because of a crash.

BdsDxe: failed to load Boot0080 "Mac OS X" from PciRoot(0x0)/Pci(0xA,0x0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,8A9FE3F8E5257C4DA0B6F82B166AA2BD)/\3055B17D-C0C0-487B-949F-6E4542C17156\System\Library\CoreServices\boot.efi: Not Found
macos  | BdsDxe: failed to load Boot0001 "UEFI Misc Device" from PciRoot(0x0)/Pci(0xA,0x0): Not Found
macos  | BdsDxe: loading Boot0002 "UEFI Misc Device 2" from PciRoot(0x0)/Pci(0x5,0x0)
macos  | BdsDxe: starting Boot0002 "UEFI Misc Device 2" from PciRoot(0x0)/Pci(0x5,0x0)
macos  | #[EB|LOG:EXITBS:END] _
macos  | #[EB.BST.FBS|-]
macos  | #[EB|B:BOOT]
macos  | #[EB|LOG:HANDOFF TO XNU] _
macos  | ======== End of efiboot serial output. ========
macos  | 

I added the USB-drive that is a Time Machine disk, so maybe that crashes the system? I'm reinstalling now, I will let you know if it works this time.

services:
  macos:
    image: dockurr/macos
    container_name: macos
    environment:
      VERSION: "ventura"
      DISK_SIZE: "100G"
      CPU_CORES: "12"
      ARGUMENTS: "-device usb-host,vendorid=0x1058,productid=0x2621"
    devices:
      - /dev/kvm
      - /dev/bus/usb
    cap_add:
      - NET_ADMIN
    ports:
      - 8006:8006
      - 5900:5900/tcp
      - 5900:5900/udp
    stop_grace_period: 2m
munabedan commented 2 weeks ago

I am also facing the same error

BdsDxe: failed to load Boot0080 "Mac OS X" from PciRoot(0x0)/Pci(0xA,0x0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,D2FEA3E3F5DB824DA65A00053B6D90A9)/\4DA32AB2-B86D-47DB-875B-A216296EF75C\System\Library\CoreServices\boot.efi: Not Found
macos  | BdsDxe: failed to load Boot0001 "UEFI Misc Device" from PciRoot(0x0)/Pci(0xA,0x0): Not Found
macos  | BdsDxe: loading Boot0002 "UEFI Misc Device 2" from PciRoot(0x0)/Pci(0x5,0x0)
macos  | BdsDxe: starting Boot0002 "UEFI Misc Device 2" from PciRoot(0x0)/Pci(0x5,0x0)
macos  | #[EB|LOG:EXITBS:END] _
macos  | #[EB.BST.FBS|-]
macos  | #[EB|B:BOOT]
macos  | #[EB|LOG:HANDOFF TO XNU] _
macos  | ======== End of efiboot serial output. ========

Here are the contents of my compose file

version: "3"
services:
  macos:
    image: dockurr/macos
    container_name: macos
    environment:
      VERSION: "13"
      DISK_SIZE: "150G"
    devices:
      - /dev/kvm
    cap_add:
      - NET_ADMIN
    ports:
      - "8006:8006"
      - "5900:5900/tcp"
      - "5900:5900/udp"
    volumes:
      - /media/muna/HDD/osx:/storage
    stop_grace_period: 2m
kroese commented 1 week ago

To be clear, failed to load Boot0001 is not an error. A perfectly working boot looks like this:

❯ Booting macOS using QEMU v9.1.1...
3h3h3hBdsDxe: failed to load Boot0080 "Mac OS X" from PciRoot(0x0)/Pci(0xA,0x0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,68949502815D1D40B0499297B2E9DE09)/\6DD0A636-8112-4971-9160-E1D3BB8A8428\com.apple.installer\boot.efi: Not Found
BdsDxe: failed to load Boot0001 "UEFI Misc Device" from PciRoot(0x0)/Pci(0xA,0x0): Not Found
BdsDxe: loading Boot0002 "UEFI Misc Device 2" from PciRoot(0x0)/Pci(0x5,0x0)
BdsDxe: starting Boot0002 "UEFI Misc Device 2" from PciRoot(0x0)/Pci(0x5,0x0)
#[EB|LOG:EXITBS:END] _
#[EB.BST.FBS|-]
#[EB|B:BOOT]
#[EB|LOG:HANDOFF TO XNU] _
======== End of efiboot serial output. ========

So everyone is talking about "I have the same error" but I dont see any errors in your logs? If something else goes wrong please post a screenshot or a description? But the logs looks good.