From 41dee4b3212f761819b2781a43347cda48649f79 Mon Sep 17 00:00:00 2001 From: Alexander Clouter Date: Sun, 20 Sep 2020 10:31:44 +0100 Subject: [PATCH] remove need for privileged --- Dockerfile | 2 ++ README.md | 16 +++++----------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/Dockerfile b/Dockerfile index c819311..f236ad5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -145,6 +145,8 @@ RUN touch Launch.sh \ && chmod +x ./Launch.sh \ && tee -a Launch.sh <<< '#!/bin/sh' \ && tee -a Launch.sh <<< 'set -eu' \ + && tee -a Launch.sh <<< 'sudo chown $(id -u):$(id -g) /dev/kvm 2>/dev/null || true' \ + && tee -a Launch.sh <<< 'sudo chown -R $(id -u):$(id -g) /dev/snd 2>/dev/null || true' \ && tee -a Launch.sh <<< 'exec qemu-system-x86_64 -m ${RAM:-8}000 \' \ && tee -a Launch.sh <<< '-cpu Penryn,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check \' \ && tee -a Launch.sh <<< '-machine q35,accel=kvm:tcg \' \ diff --git a/README.md b/README.md index 9999675..76be75d 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,7 @@ Pull requests, suggestions very welcome! docker pull sickcodes/docker-osx -docker run --privileged -v /tmp/.X11-unix:/tmp/.X11-unix sickcodes/docker-osx +docker run --device /dev/kvm --device /dev/snd -v /tmp/.X11-unix:/tmp/.X11-unix sickcodes/docker-osx # press ctrl G if your mouse gets stuck @@ -40,7 +40,7 @@ docker run --privileged -v /tmp/.X11-unix:/tmp/.X11-unix sickcodes/docker-osx # need more RAM and SSH on 0.0.0.0:50922? -docker run -e RAM=4 -p 50922:10022 --privileged -v /tmp/.X11-unix:/tmp/.X11-unix sickcodes/docker-osx:latest +docker run --device /dev/kvm --device /dev/snd -e RAM=4 -p 50922:10022 sickcodes/docker-osx:latest ssh fullname@localhost -p 50922 @@ -109,7 +109,7 @@ docker ps --all #make note of your container id docker commit containerID newImageName # To run this image do the following -docker run --privileged -v /tmp/.X11-unix:/tmp/.X11-unix newImageName +docker run --device /dev/kvm --device /dev/snd -v /tmp/.X11-unix:/tmp/.X11-unix newImageName ``` # Troubleshooting @@ -130,7 +130,7 @@ sudo yum install xorg-x11-server-utils # then run xhost + -docker run --privileged -v /tmp/.X11-unix:/tmp/.X11-unix sickcodes/docker-osx ./OpenCore-Boot.sh +docker run --device /dev/kvm --device /dev/snd -v /tmp/.X11-unix:/tmp/.X11-unix sickcodes/docker-osx ./OpenCore-Boot.sh ``` Alternative run, thanks @roryrjb @@ -159,12 +159,6 @@ sudo dockerd sudo nohup dockerd & ``` -Check /dev/kvm permissions - -```bash -sudo chmod 666 /dev/kvm -``` - If you don't have Docker already ```bash @@ -261,7 +255,7 @@ docker run \ -e CORES=4 \ -e EXTRA='-usb -device usb-host,hostbus=1,hostaddr=8' \ -e INTERNAL_SSH_PORT=23 \ ---privileged -v /tmp/.X11-unix:/tmp/.X11-unix docker-osx:latest +--device /dev/kvm --device /dev/snd -v /tmp/.X11-unix:/tmp/.X11-unix docker-osx:latest ```