GNU/Linux >> Tutoriales Linux >  >> Linux

Docker componer volumen Permisos linux

Según la referencia docker-compose y docker run, el user La opción establece la identificación del usuario (y la identificación del grupo) del proceso que se ejecuta en el contenedor. Si establece esto en 1000:1000 , su servidor web ya no puede vincularse al puerto 80. La vinculación a un puerto por debajo de 1024 requiere permisos de raíz. Esto significa que debe eliminar el user: 1000:1000 agregado declaración de nuevo.

Para resolver el problema de permisos con el volumen compartido, debe cambiar la propiedad del directorio. Ejecute chown 1000:1000 /path/to/volume . Esto se puede ejecutar dentro del contenedor o directamente en el sistema host. El cambio es persistente y efectivo de inmediato (no es necesario reiniciar el contenedor).

En general, creo que el volumen debería estar en un subdirectorio, por ejemplo,

  volumes:
    - ./public:/var/www/html

Asegúrate de que el usuario correcto posee ./public . Si inicia el contenedor y el directorio no existe, docker lo crea por usted. En este caso, el directorio es propiedad de root y debe cambiar la propiedad manualmente como se explicó anteriormente.

Alternativamente, puede ejecutar el servidor web como un usuario sin privilegios (user: 1000:1000 ), deje que el servidor escuche en el puerto 8080 y cambie el enrutamiento a

 ports:
    - "8080:8080"

Linux
  1. Permisos de Linux 101

  2. ¿Qué es Umask en Linux?

  3. Linux su comando

  4. Agregue un usuario de Linux con permisos de raíz de documentos

  5. Actualización de Docker en la AMI de Amazon Linux

Permisos de archivos de Linux:todo lo que necesita saber

Primeros pasos con Docker Compose en Linux

Cómo ejecutar Docker como usuario no root en Linux

Cómo cambiar de usuario en Linux

Cómo instalar Docker y Docker Compose en Linux

Permisos básicos de directorio de Linux y cómo verificarlos