version: '3.8' services: db: image: mysql:8.0 container_name: email_templates_db environment: MYSQL_ROOT_PASSWORD: rootpassword MYSQL_DATABASE: email_templates MYSQL_USER: appuser MYSQL_PASSWORD: apppassword ports: - "3306:3306" volumes: - db_data:/var/lib/mysql restart: unless-stopped healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost"] timeout: 20s retries: 10 app: build: . container_name: email_templates_app ports: - "3000:3000" environment: DB_HOST: db DB_USER: appuser DB_PASSWORD: apppassword DB_NAME: email_templates DB_PORT: 3306 DB_TYPE: mysql API_KEY: ${API_KEY} depends_on: db: condition: service_healthy restart: unless-stopped volumes: db_data: