2026-07-22 16:37:53 +02:00
|
|
|
services:
|
|
|
|
|
db:
|
|
|
|
|
image: mysql:8.0
|
2026-08-03 10:02:12 +02:00
|
|
|
env_file: .env
|
2026-07-22 16:37:53 +02:00
|
|
|
volumes:
|
|
|
|
|
- db_data:/var/lib/mysql
|
2026-08-03 10:02:12 +02:00
|
|
|
- ./migrations/schema.sql:/docker-entrypoint-initdb.d/01_schema.sql:ro
|
2026-07-22 16:37:53 +02:00
|
|
|
healthcheck:
|
|
|
|
|
test:
|
|
|
|
|
[
|
|
|
|
|
"CMD",
|
|
|
|
|
"mysqladmin",
|
|
|
|
|
"ping",
|
|
|
|
|
"-h",
|
|
|
|
|
"127.0.0.1",
|
|
|
|
|
"-u",
|
|
|
|
|
"root",
|
2026-08-03 10:02:12 +02:00
|
|
|
"-p${MYSQL_ROOT_PASSWORD}",
|
2026-07-22 16:37:53 +02:00
|
|
|
]
|
|
|
|
|
interval: 3s
|
|
|
|
|
timeout: 3s
|
|
|
|
|
retries: 10
|
2026-08-03 10:02:12 +02:00
|
|
|
restart: unless-stopped
|
2026-07-22 16:37:53 +02:00
|
|
|
|
|
|
|
|
web:
|
|
|
|
|
build: .
|
2026-08-03 10:02:12 +02:00
|
|
|
env_file: .env
|
|
|
|
|
environment:
|
|
|
|
|
- FLASK_ENV=${FLASK_ENV}
|
2026-07-22 16:37:53 +02:00
|
|
|
volumes:
|
2026-08-03 10:02:12 +02:00
|
|
|
# Montage restreint au code applicatif (pas .git / mysql_data / .env)
|
|
|
|
|
- ./app:/app/app
|
2026-07-22 16:37:53 +02:00
|
|
|
ports:
|
|
|
|
|
- "5000:5000"
|
|
|
|
|
depends_on:
|
|
|
|
|
db:
|
|
|
|
|
condition: service_healthy
|
2026-08-03 10:02:12 +02:00
|
|
|
restart: unless-stopped
|
2026-07-22 16:37:53 +02:00
|
|
|
|
|
|
|
|
phpmyadmin:
|
|
|
|
|
image: phpmyadmin/phpmyadmin
|
2026-08-03 10:02:12 +02:00
|
|
|
env_file: .env
|
2026-07-22 16:37:53 +02:00
|
|
|
environment:
|
|
|
|
|
PMA_HOST: db
|
2026-08-03 10:02:12 +02:00
|
|
|
ports:
|
|
|
|
|
# Accès local uniquement (pas d'exposition publique)
|
2026-08-09 09:42:55 +00:00
|
|
|
- "8080:80"
|
2026-07-22 16:37:53 +02:00
|
|
|
depends_on:
|
|
|
|
|
- db
|
2026-08-03 10:02:12 +02:00
|
|
|
restart: unless-stopped
|
2026-07-22 16:37:53 +02:00
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
|
db_data:
|