# Stack de développement Laverie Connectée # Usage : docker compose up -d services: mysql: image: mysql:8.0 container_name: laverie-mysql restart: unless-stopped ports: - "${MYSQL_PORT:-3306}:3306" environment: MYSQL_ROOT_PASSWORD: "${MYSQL_ROOT_PASSWORD:-secret}" MYSQL_DATABASE: laverie MYSQL_USER: laverie MYSQL_PASSWORD: "${MYSQL_PASSWORD:-laverie}" volumes: - laverie_mysql_data:/var/lib/mysql healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-p${MYSQL_ROOT_PASSWORD:-secret}"] interval: 10s timeout: 5s retries: 5 redis: image: redis:7-alpine container_name: laverie-redis restart: unless-stopped ports: - "${REDIS_PORT:-6379}:6379" volumes: - laverie_redis_data:/data healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 5s retries: 5 # Service applicatif Laravel (optionnel — décommenter pour lancer l'API dans Docker) # app: # build: # context: ./backend # dockerfile: Dockerfile # container_name: laverie-app # restart: unless-stopped # ports: # - "${APP_PORT:-8000}:8000" # environment: # APP_ENV: local # APP_DEBUG: "true" # DB_CONNECTION: mysql # DB_HOST: mysql # DB_PORT: 3306 # DB_DATABASE: laverie # DB_USERNAME: laverie # DB_PASSWORD: "${MYSQL_PASSWORD:-laverie}" # REDIS_HOST: redis # REDIS_PORT: 6379 # LAVERIE_MACHINE_API_KEY: "${LAVERIE_MACHINE_API_KEY:-demo-machine-api-key}" # volumes: # - ./backend:/var/www/html # depends_on: # mysql: # condition: service_healthy # redis: # condition: service_healthy # command: php artisan serve --host=0.0.0.0 --port=8000 volumes: laverie_mysql_data: laverie_redis_data: