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

200
Vistas
Capture la salida de un programa ejecutado en Docker

Uso la ventana acoplable para ejecutar un script bash y necesito capturar su salida y solo su salida.

docker run --rm --volume=/tmp/test.sh:/tmp/test.sh:ro --entrypoint=/bin/bash node:4.6.0 -xe /tmp/test.sh

El problema es que también obtengo el resultado de Docker descargando la imagen. piensa como:

 Unable to find image 'node:4.6.0' locally 4.6.0: Pulling from library/node 6a5a5368e0c2: Pulling fs layer 7b9457ec39de: Pulling fs layer ff18e19c2db4: Pulling fs layer 6a3d69edbe90: Pulling fs layer 0ce4b037e17f: Pulling fs layer

¿Hay alguna manera de capturar solo la salida generada por el script bash ejecutado por la ventana acoplable sin mensajes/errores/advertencias adicionales que la ventana acoplable pueda generar?

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

0

La salida de la ventana acoplable se envía a stderr para que pueda diferenciarse de la salida normal del script.

Si necesita tanto stderr como stdout del contenedor, use la salida de docker logs , que es la opción más segura pero un poco más compleja de configurar. Los registros de notas solo funcionan localmente con los controladores de registro json-file y journald .

 CID=$(docker run -d --volume=/tmp/test.sh:/tmp/test.sh:ro \ --entrypoint=/bin/bash node:4.6.0 -xe /tmp/test.sh) docker wait $CID docker logs $CID docker rm $CID

Si solo está interesado en la salida estándar de su proceso, redirija la salida estándar a un archivo. Cualquier salida de error, junto con las ventanas acoplables, pasará a la pantalla. El archivo solo contendrá datos de salida estándar.

 docker run --rm --volume=/tmp/test.sh:/tmp/test.sh:ro \ --entrypoint=/bin/bash node:4.6.0 -xe /tmp/test.sh > output

También puede redirigir stderr a stdout dentro del contenedor para que solo pierda la salida de docker stderr.

 docker run -rm --volume=/tmp/test.sh:/tmp/test.sh:ro \ --entrypoint=/bin/bash node:4.6.0 -xec '/tmp/test.sh 2>&1' > output
about 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