Closed JamesClarke7283 closed 1 month ago
I was able to get this image working on rootless docker by editing /etc/subgid
. On my system, my username is nate
, and the kvm
user has gid 104, so I added this line.
nate:104:1
I wrote a very short script to do this process automatically (requires root privileges).
#!/bin/bash
read -p "Enter your username: " DOCKER_USER
KVM_GROUP="$(cat /etc/group | grep ^kvm | awk -F: '{print $3;}')"
printf "%s:%s:1\n" "$DOCKER_USER" "$KVM_GROUP" >> /etc/subgid
If this doesn't work, you may need to add the kvm
group to your container. First, find the group that the host kvm
group maps to.
#!/bin/bash
read -p "Enter your username: " DOCKER_USER
KVM_GROUP="$(cat /etc/group | grep ^kvm | awk -F: '{print $3;}')"
KVM_MAPPED_GROUP=1
while read MAPPING ; do
if [ "$(printf "%s\n" "$MAPPING" | awk -F: '{print $2;}')" -eq "$KVM_GROUP" ] ; then
break
fi
MAP_SIZE="$(printf "%s\n" "$MAPPING" | awk -F: '{print $3;}')"
KVM_MAPPED_GROUP="$(expr "$KVM_MAPPED_GROUP" + "$MAP_SIZE")"
done < <(grep "^$DOCKER_USER" /etc/subgid)
echo "KVM group: $KVM_MAPPED_GROUP"
Then, in your docker-compose.yml
file, add the following lines:
services:
qemu:
# ...
group_add:
- [the group number from the previous step]
Operating system
Parabola GNU/Linux-libre
Description
I have my user added to the kvm group, and also rootless podman is setup, it should work without root privs.
Dockerfile
Docker log
❯ ERROR: Script must be executed with root privileges.
Screenshots (optional)
No response