version: '3.8' services: app: build: context: ../../.. dockerfile: docker/dev/podman/Dockerfile container_name: incr-dev-app restart: unless-stopped working_dir: /var/www/html environment: - APP_ENV=local - APP_DEBUG=true - APP_KEY=base64:YOUR_APP_KEY_HERE - DB_CONNECTION=mysql - DB_HOST=db - DB_PORT=3306 - DB_DATABASE=incr_dev - DB_USERNAME=incr_user - DB_PASSWORD=incr_password - VITE_PORT=5173 volumes: - ../../../:/var/www/html:Z - /var/www/html/node_modules - /var/www/html/vendor 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 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 redis: image: docker.io/library/redis:7-alpine container_name: incr-dev-redis restart: unless-stopped ports: - "6379:6379" networks: - incr-dev-network networks: incr-dev-network: driver: bridge volumes: db_data: driver: local