Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

152
Views
Ejecute un comando de migración de base de datos al implementar un contenedor Docker en AWS

Por favor, tenga paciencia conmigo. Bastante nuevo en Docker.

Estoy implementando contenedores Docker (separados) en un registro de AWS EC2 mediante CodeDeploy . En la implementación, el siguiente comando se ejecuta después de configurar algunas variables ambientales, etc.:

 exec docker run -d ${PORTS} -v cache-${CACHE_VOLUME} --env-file $(dirname $0)/docker.env --tty "${IMAGE}:${TAG}"

El contenedor ejecuta una imagen ubicada y etiquetada en EC2 Container Service. No hay problemas hasta ahora.

Dado que esta es una aplicación PHP (específicamente una aplicación Symfony2), normalmente necesitaría ejecutar el siguiente comando para ejecutar migraciones de bases de datos en la implementación:

 php app/console doctrine:migrations:migrate --no-interaction

Ahora, ¿hay alguno para ejecutar este comando durante la "ejecución de la ventana acoplable..." mientras se mantiene el contenedor en ejecución, o necesito ejecutar otro contenedor específicamente para este comando?

¡Muchas gracias!

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Necesitas crear un punto de entrada . Este script se ejecuta al inicio del contenedor.

archivo entrypoint.sh:

 #create or update db ./waitforit.sh <DB_HOST>:<DP_PORT> -t 30 php app/console doctrine:migrations:execute # start apache apache2-foreground

espérelo , es un script esperado cuando se inicia la base de datos

over 4 years ago · Santiago Trujillo Report

0

Solo dejo esto aquí para el próximo que busque esto... ;-)

Cuando se usa una versión reciente de Doctrine, hay un parámetro bastante útil para esto:

 php bin/console doctrine:migrations:migrate --no-interaction --allow-no-migration

El parámetro "no permitir migración" indica a la doctrina que no lance una excepción, cuando no hay nada que hacer...

over 4 years ago · Santiago Trujillo Report

0

hago lo siguiente:

 docker-compose exec [containerID] ./app/console migrations:migrate --no-interaction
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!