Files
NationsGlory_ServeurBuild_Red/DOCKER.md

5.7 KiB

🐳 NationsGlory - Déploiement Docker

Serveur Minecraft 1.6.4 MCPC+ conteneurisé avec Docker.

🚀 Démarrage rapide

# 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

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 :

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

# Se connecter à la console
make console

# Dans la console:
> op <pseudo>
> list
> save-all
> stop

Commandes administratives

# 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

make backup

Crée : backups/world-YYYYMMDD-HHMM.tar.gz

Lister les backups

make list-backups

Restaurer un backup

# Arrêter le serveur
make stop

# Restaurer
tar -xzf backups/world-YYYYMMDD-HHMM.tar.gz

# Redémarrer
make start

🔧 Maintenance

Nettoyer les logs

make clean-logs

Supprimer vieux backups (>7j)

make clean-backups

Mettre à jour Docker image

make update
make restart

Réinitialiser le monde

⚠️ DESTRUCTIF - Supprime toutes les constructions !

make reset-world

📊 Monitoring

Statistiques

make status    # État général
make stats     # Statistiques détaillées

Logs

make logs                          # Temps réel
docker-compose logs --tail=100     # 100 dernières lignes
docker-compose logs | grep ERROR   # Erreurs uniquement

Ressources

docker stats mc-nationsglory

🚚 Migration vers /srv/minecraft

Automatique (recommandé)

sudo make migrate
# ou: sudo ./migrate-to-srv.sh

Manuelle

# 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

# Activer
docker-compose exec nationsglory-modded rcon-cli whitelist on

# Ajouter joueur
docker-compose exec nationsglory-modded rcon-cli whitelist add <pseudo>

Bannir

docker-compose exec nationsglory-modded rcon-cli ban <pseudo> <raison>

🐛 Dépannage

Le serveur ne démarre pas

# Vérifier les logs
make logs

# Vérifier la config
make check

# Réparer permissions
make fix-permissions

Port déjà utilisé

Dans .env :

MINECRAFT_PORT=25566

Puis : make restart

Problème de mémoire

Dans .env :

MEMORY=4G
INIT_MEMORY=2G

Réparer les permissions

make fix-permissions

📚 Documentation complète

🌐 Intégration réseau

Avec Traefik

Ajouter dans docker-compose.yml :

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 :

MEMORY=4G
INIT_MEMORY=2G
VIEW_DISTANCE=8

Dans docker-compose.yml :

JVM_OPTS: "-XX:+UseG1GC -XX:MaxGCPauseMillis=50 -XX:+UnlockExperimentalVMOptions"

Limites Docker

deploy:
  resources:
    limits:
      cpus: '2'
      memory: 4G

📞 Support

Vérifier la configuration

make check

Logs importants

  • Docker: make logs
  • Serveur: data/logs/latest.log
  • Crash: data/crash-reports/

État du système

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