# Docker Setup Ce projet inclut des fichiers Docker pour faciliter le déploiement. ## Fichiers Docker - `Dockerfile` - Image de production optimisée (multi-stage build) - `docker-compose.yml` - Configuration pour la production ## Production Pour construire et démarrer l'application en production : ```bash # Construire l'image docker-compose build # Démarrer les services docker-compose up -d # Voir les logs docker-compose logs -f ``` ## Variables d'environnement Créez un fichier `.env` à la racine du projet avec les variables suivantes : ```env NEXTAUTH_SECRET=your-secret-key-here NEXTAUTH_URL=http://localhost:3000 DATABASE_URL=file:./prisma/dev.db ``` ## Volumes persistants ### Base de données La base de données SQLite est persistée via un volume Docker. Par défaut, elle est stockée dans `/Volumes/EXTERNAL_USB/sites/got-gaming/data`, mais vous pouvez la personnaliser avec la variable d'environnement `PRISMA_DATA_PATH`. Les migrations Prisma sont appliquées automatiquement au démarrage du conteneur. Pour appliquer manuellement les migrations : ```bash docker-compose exec got-app node node_modules/.bin/prisma migrate deploy ``` ### Images uploadées Les images uploadées (avatars, images d'événements, etc.) sont persistées dans un volume Docker. Par défaut, elles sont stockées dans `./uploads` à la racine du projet, mais vous pouvez personnaliser le chemin avec la variable d'environnement `UPLOADS_PATH`. Exemple pour utiliser un chemin personnalisé : ```bash UPLOADS_PATH=/path/to/your/uploads docker-compose up -d ``` ## Commandes utiles ```bash # Arrêter les conteneurs docker-compose down # Reconstruire sans cache docker-compose build --no-cache # Accéder au shell du conteneur docker-compose exec got-app sh # Voir les logs en temps réel docker-compose logs -f got-app ```