Uso del comando Docker sin root con asignación de espacio de nombres de usuario: error de permiso

Uso del comando Docker sin root con asignación de espacio de nombres de usuario: error de permiso

Quiero crear una imagen de Docker docker buildsin privilegios de root.

Seguí eldocumentación oficialpara configurar la reasignación del espacio de nombres de usuario, pero cuando ejecuto docker image ls(o docker build -t myapp .o docker run hello-world) se muestra el siguiente error:

permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/images/json": dial unix /var/run/docker.sock: connect: permission denied

Siguiendo las instrucciones del apartadoHabilitar userns-remap en el demonio, He configurado "userns-remap": "default"y /etc/docker/daemon.jsoncreado rangos para este usuario en /etc/subuidy /etc/subgid.

El demonio de Docker se está ejecutando, se inició a través de systemd y los archivos de registro muestran que el espacio de nombres está habilitado con el dockremapusuario:

level=info msg="User namespaces: ID ranges will be mapped to subuid/subgid ranges of: dockremap"
level=info msg="[graphdriver] using prior storage driver: overlay2"
level=info msg="Loading containers: start."
level=info msg="Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon option --bip can be used to set a preferred IP address"
level=info msg="Loading containers: done."
level=warning msg="Not using native diff for overlay2, this may cause degraded performance for building images: kernel has CONFIG_OVERLAY_FS_REDIRECT_DIR enabled" storage-driver=overlay2
level=info msg="Docker daemon" commit=659604f9ee graphdriver=overlay2 version=24.0.2
level=info msg="Daemon has completed initialization"
level=info msg="API listen on /run/docker.sock"
Started Docker Application Container Engine.

Sin embargo, cuando ahora, como usuario normal, ejecuto el comando Docker, se produce el error de permiso que se muestra arriba.

Los permisos para el archivo mencionado en el error:

0 srw-rw---- 1 root docker 0 Jul 14 13:35 /var/run/docker.sock

¿Entendí mal las instrucciones y el usuario debe ejecutar el comando Docker dockremap? Sin embargo, lo siguiente no genera nada: sudo su dockremap -c "docker image ls". Además, no puedo iniciar sesión como dockremapusuario, incluso después de configurar una contraseña.

Entonces mi pregunta es: ¿Qué debo esperar después de seguir la configuración de la documentación y cómo puedo usar el dockercomando sin root, especialmente para crear una imagen?

información relacionada