De forma predeterminada, un contenedor de Docker se ejecuta como usuario raíz. Esto representa una gran amenaza para la seguridad si implementa sus aplicaciones a gran escala dentro de Docker Containers. Puede cambiar o cambiar a un usuario diferente dentro de un Docker Container utilizando la instrucción USER . Para esto, primero debe crear un usuario y un grupo dentro del Contenedor.
En este artículo, vamos a utilizar la instrucción USER para cambiar el usuario dentro del Contenedor de Root al que vamos a crear. Para hacerlo, siga los siguientes pasos:
Paso 1: Crear el Dockerfile
Puede especificar las instrucciones para crear un nuevo usuario y grupo y para cambiar de usuario en el Dockerfile . Para este ejemplo, simplemente crearemos una imagen de Ubuntu y usaremos el bash con un usuario diferente al usuario raíz.
FROM ubuntu:latest RUN apt-get -y update RUN groupadd -r user && useradd -r -g user user USER user
En el dockerfile anterior , extrajimos la imagen base de Ubuntu y la actualizamos. Hemos creado un nuevo grupo llamado usuario y un nuevo usuario dentro del grupo con el mismo nombre. Usando la opción USUARIO , hemos cambiado el usuario.
Paso 2: crea la imagen de Docker
Después de crear el Dockerfile , ahora podemos crear la imagen de Docker usando el comando Build.
sudo docker build -t user-demo .
Paso 3: Ejecute el Contenedor Docker
Utilice el comando Ejecutar de Docker para ejecutar el Contenedor.
sudo docker run -it user-demo bash
Paso 4: Verifique la salida
Ahora puede verificar que el usuario predeterminado y el grupo hayan cambiado al que creamos en el Dockerfile usando el comando id .
id
Para concluir, en este artículo discutimos cómo usar la instrucción USER dentro del Dockerfile para cambiar el usuario predeterminado de Docker Container de Root a otro usuario que podemos crear usando los comandos useradd y grouadd .