services: app: build: context: . dockerfile: Dockerfile target: prod restart: unless-stopped ports: - ${PORT}:${PORT} environment: APP_ENV: ${APP_ENV} PORT: ${PORT} BLUEPRINT_DB_HOST: ${BLUEPRINT_DB_HOST} BLUEPRINT_DB_PORT: ${BLUEPRINT_DB_PORT} BLUEPRINT_DB_DATABASE: ${BLUEPRINT_DB_DATABASE} BLUEPRINT_DB_USERNAME: ${BLUEPRINT_DB_USERNAME} BLUEPRINT_DB_PASSWORD: ${BLUEPRINT_DB_PASSWORD} depends_on: mysql_bp: condition: service_healthy networks: - blueprint mysql_bp: image: mysql:latest restart: unless-stopped environment: MYSQL_DATABASE: ${BLUEPRINT_DB_DATABASE} MYSQL_USER: ${BLUEPRINT_DB_USERNAME} MYSQL_PASSWORD: ${BLUEPRINT_DB_PASSWORD} MYSQL_ROOT_PASSWORD: ${BLUEPRINT_DB_ROOT_PASSWORD} ports: - "${BLUEPRINT_DB_PORT}:3306" volumes: - mysql_volume_bp:/var/lib/mysql healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "${BLUEPRINT_DB_HOST}", "-u", "${BLUEPRINT_DB_USERNAME}", "--password=${BLUEPRINT_DB_PASSWORD}"] interval: 5s timeout: 5s retries: 3 start_period: 15s networks: - blueprint volumes: mysql_volume_bp: networks: blueprint: