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 command: [ "bun", "run", "seed" ] app: build: . depends_on: seed: condition: service_completed_successfully ports: - "3000:3000" environment: - DATABASE_URL=mysql://battery:battery@db:3306/battery_soh volumes: mysql_data: