diff --git a/docker-compose.yml b/docker-compose.yml index c5f7e1a..df97108 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -12,7 +12,8 @@ services: DB_USERNAME: webgis_user DB_PASSWORD: webgis_password depends_on: - - db + migrate: + condition: service_completed_successfully restart: unless-stopped db: @@ -29,6 +30,27 @@ services: - ./migrations:/docker-entrypoint-initdb.d:ro restart: unless-stopped + migrate: + image: mysql:8.4 + environment: + MYSQL_PWD: root_password + volumes: + - ./migrations:/migrations:ro + depends_on: + - db + command: > + sh -c " + until mysqladmin ping -h db -uroot -p$$MYSQL_PWD --silent; do + echo 'Waiting for database...'; + sleep 2; + done; + for file in /migrations/*.sql; do + echo Running $$file; + mysql -h db -uroot -p$$MYSQL_PWD < $$file; + done; + " + restart: "no" + phpmyadmin: image: phpmyadmin:5.2 expose: