services: app: build: context: ../.. dockerfile: docker/dev/Dockerfile container_name: incr-dev-app restart: unless-stopped working_dir: /var/www/html environment: - DB_HOST=db volumes: - ../../:/var/www/html:Z - app_node_modules:/var/www/html/node_modules ports: - "8000:8000" - "5173:5173" depends_on: db: condition: service_healthy networks: - incr-dev-network db: image: docker.io/library/mysql:8.0 container_name: incr-dev-db restart: unless-stopped environment: - MYSQL_DATABASE=incr_dev - MYSQL_USER=incr_user - MYSQL_PASSWORD=incr_password - MYSQL_ROOT_PASSWORD=root_password volumes: - db_data:/var/lib/mysql - ./mysql-init:/docker-entrypoint-initdb.d:ro ports: - "3307:3306" healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "incr_user", "-pincr_password"] timeout: 10s retries: 10 interval: 10s start_period: 10s networks: - incr-dev-network networks: incr-dev-network: driver: bridge volumes: db_data: driver: local app_node_modules: driver: local