Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

315
Visualizações
Muestra el mensaje de éxito después de que se completa la composición de la ventana acoplable

Ejecuto muchos servicios en mi docker-compse.yml. Me gustaría mostrar un mensaje para que el usuario sepa cuándo se completa la composición de la ventana acoplable. Traté de repetir el mensaje con el comando pero mi contenedor salió con el código 0

 command: bash -c "echo Congratulation! You can use your containers now"

¿Hay alguna forma de informar al usuario cuando se completa la composición de la ventana acoplable? ¡Muchas gracias!

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Cualquier cosa que haga en CMD solo será visible en los registros, y solo por servicio, por lo que también puede mirar los registros que supongo que es lo que está tratando de evitar. Si desea que funcione desde la línea de comando local, necesitará envolver el comando docker-compose up .

LO siguiente NO está completamente probado. Esto es solo para orientación. Yo mismo uso los scripts getContainerHealth y waitContainer, por lo que puedo responder por ellos. Estoy bastante seguro de que los encontré en este sitio, pero no recuerdo dónde.

Suponiendo que está esperando que sus servicios estén en un estado utilizable, podría usar algo similar a este archivo de redacción:

docker-compose.yml

 services: serviceOne: // ... the usual stuff container_name: serviceOne healthcheck: test: ["CMD", "curl", "-f", "http://localhost"] interval: 10s timeout: 10s retries: 3 start_period: 1s serviceTwo: // ... the usual stuff container_name: serviceTwo healthcheck: test: ["CMD", "curl", "-f", "http://localhost"] interval: 10s start_period: 1s

Los comandos en la prueba son los comandos que usa para definir que el servicio está en funcionamiento. Más información aquí: https://docs.docker.com/compose/compose-file/#healthcheck

Probablemente querrá verificaciones de estado diferentes (o al menos intervalos, tiempos de espera, períodos de inicio, etc.) para la producción y el desarrollo.

luego, un script de bash que usa en lugar de docker-compose up:

 getContainerHealth () { docker inspect --format "{{json .State.Health.Status }}" $1 } waitContainer () { while STATUS=$(getContainerHealth $1); [ $STATUS != "\"healthy\"" ]; do if [ $STATUS = "\"unhealthy\"" ]; then echo "Failed!" exit -1 fi printf . lf=$'\n' sleep 1 done printf "$lf" } waitContainers () { waitContainer serviceOne waitContainer serviceTwo // ... for all services } docker-compose up echo "In progress. Please wait" waitContainers echo "Done. Ready to roll."
over 4 years ago · Santiago Trujillo Relatório

0

cree un archivo de shell echo.sh que contenga echo "Su mensaje"

En el archivo Docker, agregue CMD ["/dockerRepo/echo.sh"]

over 4 years ago · Santiago Trujillo Relatório

0

¿Ha intentado ejecutar algo como lo siguiente directamente en el Dockerfile?

 RUN echo -e "Your message"
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda