Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to run Docker inside Docker-OSX #346

Open
rationalthinker1 opened this issue Sep 21, 2021 · 6 comments
Open

Unable to run Docker inside Docker-OSX #346

rationalthinker1 opened this issue Sep 21, 2021 · 6 comments

Comments

@rationalthinker1
Copy link

Hello,
I want to install Docker to get it test some build process. However, I get this error. Docker requires a processor with virtualization capabilities and hypervisor support.
image

@rationalthinker1
Copy link
Author

I used to do it before in vmware. Linux -> windows 10 -> Linux

@sickcodes
Copy link
Owner

@rationalthinker1

Via: https://github.com/kholia/OSX-KVM/blob/master/notes.md

Use the sysctl kern.hv_support (output 1 is good) command to check if Hypervisor is enabled within the macOS VM.

If Hypervisor is not enabled, check that you have the required CPU features. Run the sysctl -a | grep machdep.cpu.features command and look for the presence of VMX flag.

@rationalthinker1
Copy link
Author

How do I add the vmx flag? How do i do the following:

Make sure that kvm_intel module is loaded properly. This is documented in our main documentation.

Make sure the VM is booted with VMX support passed through using one of the two below strategies:

You may add vmx,rdtscp arguments to the -cpu option in boot-macOS.sh file (easier option).

You may add +vmx, to the front of MY_OPTIONS in the boot script while changing -cpu Penryn to -cpu Skylake-Client or any other suitable supported CPU.

Note: Host CPU passthrough is troublesome and not generally recommended.

@rationalthinker1
Copy link
Author

Just wanted to give an update. I did get it to work.
I did the following

  • I cloned this project
  • found all references in dockerfiles to Penryn to changed to max.
  • Added +vmx flag in helm.values. Also changed Penryn to max in helm.values

Ran docker build -t docker-osx -f Dockerfile.naked -t docker-osx-custom . in the project folder.

Ran this to start docker-osx

docker run -it \
 --device /dev/kvm \
 -p 50922:10022 \
 -p 24800:24800 \
 -p 222:22 \
 -v "${PWD}/mac_hdd_ng.img:/image" \
 -v /tmp/.X11-unix:/tmp/.X11-unix \
 -e "DISPLAY=${DISPLAY:-:0.0}" \
 -e "NOPICKER=false" \
 -e "RAM=8" \
 -v "/home/raza:/mnt/hostshare" \
 -e EXTRA="-virtfs local,path=/mnt/hostshare,mount_tag=hostshare,security_model=passthrough,id=hostshare" \
 docker-osx-custom

@thematrixdev
Copy link

Thanks @rationalthinker1 . I am trying out on the same stuff now! Will @sickcodes merge the change if it works? Or I have to follow @rationalthinker1 's guide and build my custom image?

@sickcodes
Copy link
Owner

Just wanted to give an update. I did get it to work.

I did the following

  • I cloned this project

  • found all references in dockerfiles to Penryn to changed to max.

  • Added +vmx flag in helm.values. Also changed Penryn to max in helm.values

Ran docker build -t docker-osx -f Dockerfile.naked -t docker-osx-custom . in the project folder.

Ran this to start docker-osx


docker run -it \

 --device /dev/kvm \

 -p 50922:10022 \

 -p 24800:24800 \

 -p 222:22 \

 -v "${PWD}/mac_hdd_ng.img:/image" \

 -v /tmp/.X11-unix:/tmp/.X11-unix \

 -e "DISPLAY=${DISPLAY:-:0.0}" \

 -e "NOPICKER=false" \

 -e "RAM=8" \

 -v "/home/raza:/mnt/hostshare" \

 -e EXTRA="-virtfs local,path=/mnt/hostshare,mount_tag=hostshare,security_model=passthrough,id=hostshare" \

 docker-osx-custom

Looks good to me, I think it's time to merge the max. Will try and test all the images over the weekend.

Need to test this on all 4 first:

-e MASTER_PLIST_URL= https://raw.githubusercontent.com/sickcodes/OS X-serial-generator/kvm-opencore-14/config-custom.plist \

To merge this for monterey: sickcodes/osx-serial-generator#19

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants