71 lines
1.9 KiB
YAML
71 lines
1.9 KiB
YAML
# 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:
|