sickcodes / Docker-OSX

Run macOS VM in a Docker! Run near native OSX-KVM in Docker! X11 Forwarding! CI/CD for OS X Security Research! Docker mac Containers.
https://hub.docker.com/r/sickcodes/docker-osx
GNU General Public License v3.0
36.1k stars 1.78k forks source link

Error running Docker-OSX on Fedora #673

Open micartey opened 1 year ago

micartey commented 1 year ago

When running any OS, I get the following error

docker: Error response from daemon: Mounts denied: 
The path /tmp/.X11-unix is not shared from the host and is not known to Docker.
You can configure shared paths from Docker -> Preferences... -> Resources -> File Sharing.
See https://docs.docker.com/ for more info.

So I renamed /tmp to sth like ~/.tmp which works, but then I run into the next error

docker: Error response from daemon: error gathering device information while adding custom device "/dev/kvm": no such file or directory.

I have kvm installed and the folder does in fact exist. Any ideas how I can fix that?

dmelo commented 1 year ago

@micartey , if you don't have /dev/kvm its likely that you still need to enable virtualization on you bios. Besides that, I followed this guide and it worked for me https://dev.to/ianito/how-to-emulate-ios-on-linux-with-docker-4gj3#installation I'm also using Fedora.

micartey commented 1 year ago

Hello @dmelo, thanks for the response.

I do have the /dev/kvm folder as I said:

[...] the folder does in fact exist

However, I didn't enable anything specific on my bios. Could you tell me which option should be enabled?

dmelo commented 1 year ago

Is it a folder? Its suppose to be a device:

❯ ls -lhat /dev/kvm
crw-rw-rw- 1 root kvm 10, 232 Jul  4 09:21 /dev/kvm

See the char "c" at the beginning of the permissions. https://unix.stackexchange.com/questions/698528/meaning-of-file-type-c-in-ls-l-command

Where to enable virtualization, depends on your bios. But I think you'll find the instructions easily, if you search for your manufacturer/model and how to enable virtualization / enable "/dev/kvm". For me, its something like this https://www.asus.com/us/support/FAQ/1045141/

micartey commented 1 year ago

It does have a leading "c". I just assumed it is a directory since it is not a file.

I'll test changing some bios settings later

coderforlife commented 10 months ago

Fedora has selinux which means you likely need to put :z behind the -v argument (like -v /tmp/.X11-unix:/tmp/.X11-unix:z) otherwise files cannot be shared. I am however having other problems with Fedora (ALSA problems...).