# 🐳 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 > list > save-all > stop ``` ### Commandes administratives ```bash # Donner OP docker-compose exec nationsglory-modded rcon-cli op # 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 ``` ### Bannir ```bash docker-compose exec nationsglory-modded rcon-cli ban ``` ## 🐛 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