Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

711
Vistas
PUNTO DE ENTRADA: primero ejecute el comando como root, luego inicie el shell para usuarios no root

Estoy escribiendo un Dockerfile para una imagen que, cuando se ejecuta, realiza las siguientes dos cosas en orden:

  1. Inicie un demonio como root
  2. Inicie un shell interactivo como usuario no root

El problema es que ENTRYPOINT solo se puede ejecutar como un solo usuario (cualquier USUARIO que se establezca en último lugar antes de ENTRYPOINT en el Dockerfile). En este caso, ENTRYPOINT solo puede ejecutarse como usuario root o no root.

No puedo poner los comandos CMD antes de ENTRYPOINT, porque ENTRYPOINT simplemente los anula.

¿Cómo puedo lograr lo que necesito?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Inicia su contenedor como root. Esto ejecuta su punto de entrada como root. Realice todos los pasos que necesita, luego haga que el último paso se vea así:

 exec gosu username /bin/bash

Para iniciar /bin/bash como el nombre de usuario del username . Puedes encontrar gosu en este repositorio de github . Tiene la ventaja de ejecutar un comando su con un exec implícito que evita dejar el proceso principal alrededor del cual puede interrumpir el manejo de la señal.

Si hace que /bin/bash sea el valor de CMD, puede hacerlo más flexible con:

 exec gosu username "$@"

Asegúrese de usar la sintaxis json para ENTRYPOINT y CMD para evitar problemas con los comandos combinados y los argumentos cli.

Esto es preferible a sudo ya que evita cualquier opción para volver del usuario a la raíz.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda