Default configuration serveur Build NG RED

This commit is contained in:
2026-02-03 23:09:01 +01:00
commit 53d0c557d0
129 changed files with 21501 additions and 0 deletions

349
DOCKER.md Normal file
View File

@@ -0,0 +1,349 @@
# 🐳 NationsGlory - Déploiement Docker
Serveur Minecraft 1.6.4 MCPC+ conteneurisé avec Docker.
## 🚀 Démarrage rapide
```bash
# Copier la configuration
cp .env.example .env
# Démarrer le serveur
make start
# ou: docker-compose up -d
# Voir les logs
make logs
# ou: docker-compose logs -f
```
Le serveur démarre sur `localhost:25565`
## 📋 Commandes Make disponibles
```bash
make help # Afficher l'aide
make start # Démarrer le serveur
make stop # Arrêter le serveur
make restart # Redémarrer
make logs # Voir les logs en temps réel
make status # État et ressources
make console # Console serveur (RCON)
make backup # Créer une sauvegarde
make check # Vérifier la configuration
```
Voir toutes les commandes : `make help`
## 📁 Structure des volumes
```
/srv/minecraft/moddé/
├── data/ # Volume: données serveur
│ ├── mcpc.jar # Serveur MCPC+
│ ├── server.properties
│ ├── ops.txt
│ └── logs/
├── mods/ # Volume: mods Forge
├── plugins/ # Volume: plugins Bukkit
├── config/ # Volume: configurations
├── libraries/ # Volume: dépendances Maven
├── world/ # Volume: monde Minecraft
└── backups/ # Sauvegardes locales
```
## ⚙️ Configuration (.env)
Principales variables :
```env
MEMORY=2G # RAM maximale
INIT_MEMORY=1G # RAM initiale
MINECRAFT_PORT=25565 # Port d'écoute
MAX_PLAYERS=20 # Joueurs max
GAMEMODE=creative # Mode de jeu
LEVEL_TYPE=FLAT # Type de monde
```
Après modification : `make restart`
## 🎮 Gestion du serveur
### Console serveur
```bash
# Se connecter à la console
make console
# Dans la console:
> op <pseudo>
> list
> save-all
> stop
```
### Commandes administratives
```bash
# Donner OP
docker-compose exec nationsglory-modded rcon-cli op <pseudo>
# Liste des joueurs
docker-compose exec nationsglory-modded rcon-cli list
# Sauvegarder
docker-compose exec nationsglory-modded rcon-cli save-all
```
## 💾 Sauvegardes
### Backup manuel
```bash
make backup
```
Crée : `backups/world-YYYYMMDD-HHMM.tar.gz`
### Lister les backups
```bash
make list-backups
```
### Restaurer un backup
```bash
# Arrêter le serveur
make stop
# Restaurer
tar -xzf backups/world-YYYYMMDD-HHMM.tar.gz
# Redémarrer
make start
```
## 🔧 Maintenance
### Nettoyer les logs
```bash
make clean-logs
```
### Supprimer vieux backups (>7j)
```bash
make clean-backups
```
### Mettre à jour Docker image
```bash
make update
make restart
```
### Réinitialiser le monde
⚠️ **DESTRUCTIF** - Supprime toutes les constructions !
```bash
make reset-world
```
## 📊 Monitoring
### Statistiques
```bash
make status # État général
make stats # Statistiques détaillées
```
### Logs
```bash
make logs # Temps réel
docker-compose logs --tail=100 # 100 dernières lignes
docker-compose logs | grep ERROR # Erreurs uniquement
```
### Ressources
```bash
docker stats mc-nationsglory
```
## 🚚 Migration vers /srv/minecraft
### Automatique (recommandé)
```bash
sudo make migrate
# ou: sudo ./migrate-to-srv.sh
```
### Manuelle
```bash
# Créer la structure
sudo mkdir -p /srv/minecraft/moddé
# Copier les fichiers
sudo cp -r data mods plugins config libraries /srv/minecraft/moddé/
sudo cp docker-compose.yml .env /srv/minecraft/moddé/
# Permissions
sudo chown -R 1000:1000 /srv/minecraft/moddé
# Démarrer
cd /srv/minecraft/moddé
make start
```
## 🔐 Sécurité
### Whitelist
```bash
# Activer
docker-compose exec nationsglory-modded rcon-cli whitelist on
# Ajouter joueur
docker-compose exec nationsglory-modded rcon-cli whitelist add <pseudo>
```
### Bannir
```bash
docker-compose exec nationsglory-modded rcon-cli ban <pseudo> <raison>
```
## 🐛 Dépannage
### Le serveur ne démarre pas
```bash
# Vérifier les logs
make logs
# Vérifier la config
make check
# Réparer permissions
make fix-permissions
```
### Port déjà utilisé
Dans `.env` :
```env
MINECRAFT_PORT=25566
```
Puis : `make restart`
### Problème de mémoire
Dans `.env` :
```env
MEMORY=4G
INIT_MEMORY=2G
```
### Réparer les permissions
```bash
make fix-permissions
```
## 📚 Documentation complète
- [README.md](README.md) - Guide complet
- [DEPLOYMENT.md](DEPLOYMENT.md) - Déploiement production
- [QUICKSTART.md](QUICKSTART.md) - Démarrage rapide
- [TECHNICAL_NOTES.md](TECHNICAL_NOTES.md) - Notes techniques
## 🌐 Intégration réseau
### Avec Traefik
Ajouter dans `docker-compose.yml` :
```yaml
labels:
- "traefik.enable=true"
- "traefik.tcp.routers.minecraft.rule=HostSNI(`*`)"
- "traefik.tcp.routers.minecraft.entrypoints=minecraft"
networks:
- traefik-network
```
### Multi-serveurs (Velocity/BungeeCord)
Structure recommandée :
```
/srv/minecraft/
├── proxy/ # Velocity/BungeeCord
├── moddé/ # Ce serveur
└── survie/ # Autre serveur
```
## ⚡ Optimisation
### Augmenter performances
Dans `.env` :
```env
MEMORY=4G
INIT_MEMORY=2G
VIEW_DISTANCE=8
```
Dans `docker-compose.yml` :
```yaml
JVM_OPTS: "-XX:+UseG1GC -XX:MaxGCPauseMillis=50 -XX:+UnlockExperimentalVMOptions"
```
### Limites Docker
```yaml
deploy:
resources:
limits:
cpus: '2'
memory: 4G
```
## 📞 Support
### Vérifier la configuration
```bash
make check
```
### Logs importants
- Docker: `make logs`
- Serveur: `data/logs/latest.log`
- Crash: `data/crash-reports/`
### État du système
```bash
make status
make stats
docker ps
docker stats
```
---
**Image Docker** : `itzg/minecraft-server:java8`
**Serveur** : MCPC+ 1.6.4-R2.1-forge965-B251
**Mods** : 21 actifs
**Plugins** : WorldEdit, Essentials