1.9 KiB
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 :
# 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 :
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 :
docker-compose exec got-app node node_modules/.bin/prisma migrate deploy
Images uploadées
Les images uploadées (avatars et backgrounds) 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.
- Les avatars sont stockés dans
uploads/ - Les backgrounds sont stockés dans
uploads/backgrounds/
Exemple pour utiliser un chemin personnalisé :
UPLOADS_PATH=/path/to/your/uploads docker-compose up -d
Commandes utiles
# 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