services: db: image: mysql:8.4 ports: - "3306:3306" volumes: - mysql_data:/var/lib/mysql environment: - MYSQL_ROOT_PASSWORD=root - MYSQL_DATABASE=battery_soh - MYSQL_USER=battery - MYSQL_PASSWORD=battery healthcheck: test: [ "CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "-ubattery", "-pbattery" ] interval: 5s timeout: 5s retries: 20 seed: build: context: . target: source restart: "no" depends_on: db: condition: service_healthy environment: - DATABASE_URL=mysql://battery:battery@db:3306/battery_soh - SOH_PREDICTION_API_BASE_URL=http://host.docker.internal:8000 command: [ "bun", "run", "seed" ] app: build: . depends_on: seed: condition: service_completed_successfully extra_hosts: - "host.docker.internal:host-gateway" ports: - "3000:3000" environment: - DATABASE_URL=mysql://battery:battery@db:3306/battery_soh - SOH_PREDICTION_API_BASE_URL=http://host.docker.internal:8000 volumes: mysql_data: