# docker/mysql.Dockerfile
# Image MySQL production pour FailDaily
# Context de build : racine du projet (accède à backend-api/migrations/)
#
# Au premier démarrage (volume de données vide) MySQL exécute dans l'ordre :
#   00_init.sql  — dump complet prod (tables + données)
#   01_indexes.sql — index de performance messaging
# Les runs suivants ignorent initdb.d (volume déjà initialisé).
#
# ⚠ mysql:8.4 — correspond à la version OVH CloudDB (8.4.7-7) pour garantir
#   la compatibilité du dump phpMyAdmin (collations, SQL_MODE, etc.)

FROM mysql:8.4

# Reprendre la config UTF-8 depuis le fichier centralisé
# chmod 644 : MySQL refuse les fichiers world-writable (ils sont ignorés sinon)
COPY docker/my.cnf /etc/mysql/conf.d/faildaily.cnf
RUN chmod 644 /etc/mysql/conf.d/faildaily.cnf

# Scripts d'initialisation (contexte = racine projet)
# Le dump contient déjà toute la structure + données + index — pas de migration séparée
COPY backend-api/migrations/faildaily_bdd.sql /docker-entrypoint-initdb.d/00_init.sql
