Update: README.md pour déploiement Docker

This commit is contained in:
innotex
2026-02-03 23:46:58 +01:00
parent 53d0c557d0
commit 9488d3cd7c

518
README.md
View File

@@ -1,314 +1,358 @@
# 🎮 Serveur NationsGlory MCPC+ 1.6.4
# 🎮 Serveur NationsGlory 1.6.4 - Docker
Serveur Minecraft 1.6.4 avec support mods (Forge) et plugins (Bukkit) via MCPC+.
Serveur Minecraft 1.6.4 moddé avec MCPC+ (Forge + Bukkit) déployable via Docker.
**Tout inclus**: mcpc.jar, 21 mods Forge, 6 plugins Bukkit, configurations.
## <20> Navigation rapide
---
- **🐳 [Déploiement Docker](DOCKER.md)** - Utilisation avec Docker Compose
- **🚀 [Déploiement Production](DEPLOYMENT.md)** - Migration vers /srv/minecraft
- **⚡ [Démarrage rapide](QUICKSTART.md)** - Commandes essentielles
- **🔧 [Notes techniques](TECHNICAL_NOTES.md)** - Configuration détaillée
- **📦 [Installation](INSTALLATION.md)** - Guide d'installation
## 🚀 Installation rapide (3 commandes)
## 🐳 Déploiement Docker (recommandé)
### Option 1 : Migration locale vers /srv/minecraft
```bash
sudo ./migrate-to-srv.sh
cd /srv/minecraft/moddé
make start
# 1. Cloner le dépôt (tout est inclus: mcpc.jar, mods, plugins)
git clone <votre-repo> nationsglory-server
cd nationsglory-server
# 2. (Optionnel) Configurer
cp .env.example .env
# 3. Démarrer le serveur
docker-compose up -d
```
### Option 2 : Développement local
```bash
cd server-final
cp ../docker-compose.yml .
cp ../.env.example .env
make start
```
**C'est tout!** Le serveur est accessible sur `localhost:25565`
Voir [DOCKER.md](DOCKER.md) pour la documentation complète Docker.
---
## 📋 Prérequis
### Sans Docker (méthode originale)
- **Port 25565** disponible
- Au moins **2 GB de RAM** libre
- **Docker** et **Docker Compose** installés
- **Port 25565** disponible
- **4 GB RAM** minimum
- **Git** pour cloner le dépôt
### Avec Docker (recommandé)
- **Docker** installé sur votre système
- **Docker Compose** installé
- Au moins **2 GB de RAM** libre
---
## 🚀 Démarrage rapide
## 🎮 Commandes de gestion
### Méthode Docker (recommandée)
### Démarrer
```bash
# Avec Make
make start
make logs
# Ou avec Docker Compose
docker-compose up -d
docker-compose logs -f
```
### Méthode originale (Docker manuel)
### Voir les logs (sans spam)
```bash
cd server-final
./start-docker.sh
docker logs -f mc-nationsglory 2>&1 | sed -u '/^>/d'
```
Le serveur démarre dans un conteneur Docker avec Java 7, requis pour MCPC+ 1.6.4.
### Arrêter
```bash
docker-compose down
```
## 📁 Structure du serveur
### Redémarrer
```bash
docker-compose restart
```
### Console interactive (RCON)
```bash
# Récupérer le mot de passe RCON
docker exec mc-nationsglory cat /data/server.properties | grep rcon.password
# Ouvrir la console
docker exec -it mc-nationsglory rcon-cli --password <mot-de-passe>
```
---
## 📁 Structure du projet
```
server-final/
├── mcpc.jar # Serveur MCPC+ 1.6.4-R2.1-forge965-B251
├── start-docker.sh # Script de démarrage Docker
├── server.properties # Configuration serveur
├── mods/ # Mods Forge
nationsglory-server/
├── docker-compose.yml # Configuration Docker
├── .gitignore # Fichiers ignorés
├── .env.example # Template configuration
├── mcpc.jar # Serveur MCPC+ (INCLUS - 29 MB)
├── mods/ # 21 mods Forge (20 MB)
│ ├── aquatweaksng.jar
│ ├── chisel-1.0.jar
│ ├── ngbibliocraft-1.5.5.jar
│ ├── customnpc-1.0.jar
│ ├── flansmods-4.1.1.jar
│ ├── westerosblocksng.jar
│ └── ... (21 mods chargés)
├── plugins/ # Plugins Bukkit
│ ├── WorldEdit.jar # Édition de terrain
── Essentials.jar # Commandes essentielles
├── config/ # Configurations mods
├── libraries/ # Dépendances Maven
── world/ # Monde Minecraft (FLAT)
│ └── ... (et 16 autres)
├── plugins/ # 6 plugins Bukkit (3.3 MB)
── Essentials.jar # Commandes essentielles
│ ├── EssentialsChat.jar
│ ├── EssentialsSpawn.jar
│ ├── worldedit-5.6.jar # Édition terrain
│ └── ...
├── config/ # Configurations (488 KB)
│ ├── forge.cfg
│ ├── worldedit/
│ └── ... (40+ fichiers)
├── world/ # Monde Minecraft (NON versionné)
└── logs/ # Logs serveur (NON versionné)
```
**Taille totale du dépôt Git: ~53 MB**
---
## ⚙️ Configuration
### Serveur (server.properties)
### Paramètres serveur (automatiques)
- **Port** : `25565`
- **Mode** : Créatif (`gamemode=1`)
- **Type de monde** : FLAT (`level-type=FLAT`)
- **Authentification** : Désactivée (`online-mode=false`) - comptes crack acceptés
- **PvP** : Désactivé (`pvp=false`)
- **Monstres** : Désactivés (`spawn-monsters=false`)
- **Vol** : Autorisé (`allow-flight=true`)
- **Version**: Minecraft 1.6.4
- **Port**: 25565
- **Mode**: Créatif (gamemode=1)
- **Type monde**: FLAT
- **RAM**: 2 GB (configurable)
- **Authentification**: Désactivée (comptes crack acceptés)
- **PvP**: Désactivé
- **Vol**: Autorisé
### Ressources Docker
### Modifier la mémoire
- **RAM Max** : 2 GB (`-Xmx2G`)
- **RAM Init** : 1 GB (`-Xms1G`)
- **GC** : G1GC (optimisé)
- **File descriptors** : 65535 (ulimit configuré)
Éditer `docker-compose.yml`:
```yaml
environment:
MEMORY: "3G" # RAM max
INIT_MEMORY: "1500M" # RAM initiale
```
### Changer le port
Éditer `docker-compose.yml`:
```yaml
ports:
- "25566:25565" # Utilise le port 25566
```
---
## 🎯 Plugins installés
### WorldEdit
Édition de terrain avancée pour constructions massives.
**Commandes principales** :
- `//wand` - Obtenir l'outil de sélection
- `//set <block>` - Remplir la sélection
- `//replace <from> <to>` - Remplacer des blocs
- `//copy` - Copier la sélection
- `//paste` - Coller
- `//undo` - Annuler
- `//redo` - Refaire
### Essentials
Commandes de gestion serveur essentielles.
**Commandes principales** :
- `/tp <joueur>` - Téléportation
- `/give <joueur> <item> [qté]` - Donner items
- `/gamemode <mode>` - Changer mode de jeu
- `/fly` - Activer/désactiver vol
- `/heal` - Soigner
- `/feed` - Nourrir
- `/time <set/add> <temps>` - Contrôle du temps
- `/weather <clear/rain/thunder>` - Météo
## 🔐 Gestion des permissions
### Opérateurs (OP)
Donner tous les droits à un joueur :
### WorldEdit 5.6 (Édition terrain)
```
op <pseudo>
//wand # Outil de sélection
//set <block> # Remplir
//replace <a> <b> # Remplacer
//copy # Copier
//paste # Coller
//undo # Annuler
```
Retirer les droits :
### Essentials 2.13.1 (Gestion serveur)
```
deop <pseudo>
/tp <joueur> # Téléporter
/give <joueur> <item> [qté] # Donner items
/gamemode <mode> # Changer mode
/fly # Vol
/heal # Soigner
/time set <temps> # Temps
/weather <clear/rain> # Météo
```
### Fichiers de permissions
---
- `ops.txt` - Liste des opérateurs
- `white-list.txt` - Liste blanche (si activée)
- `banned-players.txt` - Joueurs bannis
- `banned-ips.txt` - IPs bannies
## 🔐 Gestion des joueurs
## 🛠️ Commandes serveur
### Console serveur
Une fois démarré, vous pouvez taper des commandes :
```
help # Liste des commandes
op <pseudo> # Donner OP
stop # Arrêter le serveur
save-all # Sauvegarder le monde
list # Liste des joueurs
ban <pseudo> # Bannir un joueur
pardon <pseudo> # Débannir
```
### Redémarrage
1. Dans la console : `stop`
2. Attendre l'arrêt complet
3. Relancer : `./start-docker.sh`
## 🔧 Maintenance
### Sauvegardes
**Sauvegarder le monde** :
### Donner les droits admin (OP)
```bash
cd server-final
tar -czf backup-$(date +%Y%m%d-%H%M).tar.gz world/ DIM1/ DIM-1/
# Via RCON
docker exec mc-nationsglory rcon-cli --password <mdp> "op <pseudo>"
# Ou via console interactive
docker exec -it mc-nationsglory rcon-cli --password <mdp>
> op <pseudo>
```
**Restaurer** :
### Retirer les droits
```bash
rm -rf world/ DIM1/ DIM-1/
tar -xzf backup-YYYYMMDD-HHMM.tar.gz
docker exec mc-nationsglory rcon-cli --password <mdp> "deop <pseudo>"
```
### Bannir/débannir
```bash
# Bannir
docker exec mc-nationsglory rcon-cli --password <mdp> "ban <pseudo>"
# Débannir
docker exec mc-nationsglory rcon-cli --password <mdp> "pardon <pseudo>"
```
---
## 🛠️ Maintenance
### Sauvegarder le monde
```bash
docker exec mc-nationsglory rcon-cli --password <mdp> "save-all"
tar -czf backup-$(date +%Y%m%d).tar.gz world/
```
### Restaurer une sauvegarde
```bash
docker-compose down
rm -rf world/
tar -xzf backup-YYYYMMDD.tar.gz
docker-compose up -d
```
### Réinitialiser le monde
⚠️ **Attention** : Supprime toutes les constructions !
```bash
cd server-final
rm -rf world/ DIM1/ DIM-1/
# Au prochain démarrage, un nouveau monde FLAT sera généré
docker-compose down
rm -rf world/
docker-compose up -d # Un nouveau monde FLAT sera créé
```
### Nettoyer les logs
```bash
cd server-final
rm -f *.log *.log.* *.lck
rm -rf crash-reports/*
docker exec mc-nationsglory sh -c "rm -f /data/*.log /data/*.lck"
docker-compose restart
```
## 📦 Mods installés
---
**21 mods actifs** :
- Chisel - Blocs décoratifs
- WesterosBlocks - Blocs Game of Thrones
- BiblioCraft - Meubles et décorations
- Autoutils - Outils automatiques
- CustomNPCs - PNJs personnalisés
- Flan's Mod - Véhicules et armes
- Netherrocks - Minerais du Nether
- TLSpecialArmor - Armures spéciales
- UniversalElectricity - Électricité
- WeaponMod - Armes
- AquaTweaks - Modifications aquatiques
- Et plus...
## 📦 Mods inclus (21 mods)
- **Chisel** - Blocs décoratifs variés
- **WesterosBlocks** - Blocs Game of Thrones
- **BiblioCraft** - Meubles et décorations
- **CustomNPCs** - PNJs personnalisables
- **Flan's Mod** - Véhicules et armes
- **UniversalElectricity** - Système électrique
- **Netherrocks** - Nouveaux minerais
- **WeaponMod** - Armes modernes
- **TLSpecialArmor** - Armures spéciales
- **AquaTweaks** - Modifications aquatiques
- **Chisel** - Blocs architecturaux
- **Parachute Mod** - Parachutes
- **Dragons Radio Mod** - Radio
- **Get All The Seeds** - Graines
- **MapWriter** - Minimap
- **Melons Spawn** - Pastèques
- **NationsGUI** - Interface NationsGlory
- **NGContent** - Contenu NationsGlory
- **NGElectricity** - Électricité NationsGlory
- **Pam's Harvestcraft** - Agriculture
- **Et plus...**
---
## 🔄 Mise à jour et déploiement
### Sur un nouveau serveur
```bash
git clone <repo>
cd nationsglory-server
docker-compose up -d
```
### Mettre à jour le serveur
```bash
git pull
docker-compose restart
```
### Ajouter un mod
```bash
# 1. Copier le mod
cp nouveau-mod.jar mods/
# 2. Commiter
git add mods/nouveau-mod.jar
git commit -m "Add: nouveau-mod"
git push
# 3. Sur le serveur
git pull
docker-compose restart
```
---
## 🐛 Dépannage
### Le serveur ne démarre pas
1. Vérifier que Docker est lancé : `docker ps`
2. Vérifier le port 25565 : `netstat -tuln | grep 25565`
3. Vérifier les logs : `cat server-final/server.log`
### Erreur "Permission denied"
Corriger les permissions :
```bash
sudo chown -R $USER:$USER server-final/
# Vérifier les logs
docker logs mc-nationsglory
# Vérifier le conteneur
docker ps -a
# Recréer le conteneur
docker-compose down
docker-compose up -d
```
### Connexion refusée
### Impossible de se connecter
```bash
# Vérifier le port
docker ps | grep 25565
1. Vérifier que `online-mode=false` dans `server.properties`
2. Le serveur accepte les comptes crack
# Vérifier que le serveur écoute
nc -zv localhost 25565
```
### Lag/performances
```bash
# Augmenter la RAM dans docker-compose.yml
MEMORY: "4G"
INIT_MEMORY: "2G"
1. Augmenter la RAM dans `start-docker.sh` (changer `-Xmx2G` en `-Xmx4G`)
2. Réduire `view-distance` dans `server.properties`
3. Limiter les entités : `/killall [type]`
## 🌍 Type de monde
Le serveur génère un **monde plat** (`level-type=FLAT`) idéal pour :
- Constructions massives
- Villes et nations
- PvP arènes
- Projets créatifs
Pour changer le type de monde :
1. `stop` dans la console
2. Modifier `level-type` dans `server.properties` (`DEFAULT`, `FLAT`, `LARGEBIOMES`)
3. Supprimer `world/` pour régénérer
4. Redémarrer
## 📞 Support
### Logs importants
- `server.log` - Log principal
- `ForgeModLoader-server-0.log` - Logs Forge/mods
- `crash-reports/` - Rapports de crash
### Vérifier les mods chargés
Au démarrage, chercher dans les logs :
```
[INFO] Forge Mod Loader has successfully loaded 21 mods
# Redémarrer
docker-compose down
docker-compose up -d
```
### Commandes de debug
### RCON ne fonctionne pas
```bash
# Récupérer le bon mot de passe
docker exec mc-nationsglory cat /data/server.properties | grep rcon.password
# Tester
docker exec mc-nationsglory rcon-cli --password <mdp> "list"
```
/forge tps # Performance serveur
/gc # Garbage collector
/mem # Utilisation mémoire
```
## 📝 Notes importantes
- ✅ Le serveur fonctionne avec **Java 7** via Docker
- ✅ Compatible avec les **comptes crack** (online-mode=false)
-**21 mods** chargés automatiquement
-**Plugins Bukkit** compatibles 1.6.4
- ⚠️ Les warnings "anonymous item" sont normaux (compatibilité 1.7)
- ⚠️ Certains items peuvent manquer si le monde a été généré avec d'autres mods
## 🔄 Mises à jour
### Ajouter un mod
1. Placer le `.jar` dans `server-final/mods/`
2. Redémarrer le serveur
3. Vérifier les logs pour les erreurs
### Ajouter un plugin
1. Placer le `.jar` dans `server-final/plugins/`
2. Redémarrer le serveur
3. Le plugin se charge automatiquement
---
**Version** : MCPC+ 1.6.4-R2.1-forge965-B251
**Forge** : 9.11.1.965
**Minecraft** : 1.6.4
**Java** : 7 (via Docker)
## 📊 Informations techniques
- **Version Minecraft**: 1.6.4
- **Serveur**: MCPC+ 1.6.4-R2.1-forge965-B251
- **Forge**: 9.11.1.965
- **Java**: 7 (via conteneur Docker)
- **Image Docker**: itzg/minecraft-server:java7
- **Mods**: 21 (Forge)
- **Plugins**: 6 (Bukkit)
- **Taille dépôt**: ~53 MB
---
## 📖 Documentation complémentaire
- [DEPLOY_README.md](DEPLOY_README.md) - Guide de déploiement détaillé
- [DEPLOYMENT_CHECKLIST.md](DEPLOYMENT_CHECKLIST.md) - Checklist de déploiement
- `.env.example` - Variables d'environnement disponibles
---
## ⚠️ Notes importantes
-**Comptes crack acceptés** (online-mode=false)
-**Docker obligatoire** (Java 7 requis)
-**Tout inclus** (mcpc.jar, mods, plugins)
- ⚠️ Les warnings "anonymous item" sont normaux (compatibilité 1.7)
- ⚠️ Le monde est en **FLAT** par défaut (idéal pour constructions)
- ⚠️ `world/` n'est PAS versionné (données spécifiques au serveur)
---
**Serveur prêt à déployer en 3 commandes** 🚀