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 ## 🚀 Installation rapide (3 commandes)
- **🚀 [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
## 🐳 Déploiement Docker (recommandé)
### Option 1 : Migration locale vers /srv/minecraft
```bash ```bash
sudo ./migrate-to-srv.sh # 1. Cloner le dépôt (tout est inclus: mcpc.jar, mods, plugins)
cd /srv/minecraft/moddé git clone <votre-repo> nationsglory-server
make start cd nationsglory-server
# 2. (Optionnel) Configurer
cp .env.example .env
# 3. Démarrer le serveur
docker-compose up -d
``` ```
### Option 2 : Développement local **C'est tout!** Le serveur est accessible sur `localhost:25565`
```bash
cd server-final
cp ../docker-compose.yml .
cp ../.env.example .env
make start
```
Voir [DOCKER.md](DOCKER.md) pour la documentation complète Docker. ---
## 📋 Prérequis ## 📋 Prérequis
### Sans Docker (méthode originale) - **Docker** et **Docker Compose** installés
- **Port 25565** disponible - **Port 25565** disponible
- Au moins **2 GB de RAM** libre - **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 ```bash
# Avec Make
make start
make logs
# Ou avec Docker Compose
docker-compose up -d docker-compose up -d
docker-compose logs -f
``` ```
### Méthode originale (Docker manuel) ### Voir les logs (sans spam)
```bash ```bash
cd server-final docker logs -f mc-nationsglory 2>&1 | sed -u '/^>/d'
./start-docker.sh
``` ```
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/ nationsglory-server/
├── mcpc.jar # Serveur MCPC+ 1.6.4-R2.1-forge965-B251 ├── docker-compose.yml # Configuration Docker
├── start-docker.sh # Script de démarrage Docker ├── .gitignore # Fichiers ignorés
├── server.properties # Configuration serveur ├── .env.example # Template configuration
├── mods/ # Mods Forge
├── mcpc.jar # Serveur MCPC+ (INCLUS - 29 MB)
├── mods/ # 21 mods Forge (20 MB)
│ ├── aquatweaksng.jar
│ ├── chisel-1.0.jar │ ├── chisel-1.0.jar
│ ├── ngbibliocraft-1.5.5.jar │ ├── customnpc-1.0.jar
│ ├── flansmods-4.1.1.jar
│ ├── westerosblocksng.jar │ ├── westerosblocksng.jar
│ └── ... (21 mods chargés) │ └── ... (et 16 autres)
├── plugins/ # Plugins Bukkit
│ ├── WorldEdit.jar # Édition de terrain ├── plugins/ # 6 plugins Bukkit (3.3 MB)
── Essentials.jar # Commandes essentielles ── Essentials.jar # Commandes essentielles
├── config/ # Configurations mods │ ├── EssentialsChat.jar
├── libraries/ # Dépendances Maven │ ├── EssentialsSpawn.jar
── world/ # Monde Minecraft (FLAT) │ ├── 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 ## ⚙️ Configuration
### Serveur (server.properties) ### Paramètres serveur (automatiques)
- **Port** : `25565` - **Version**: Minecraft 1.6.4
- **Mode** : Créatif (`gamemode=1`) - **Port**: 25565
- **Type de monde** : FLAT (`level-type=FLAT`) - **Mode**: Créatif (gamemode=1)
- **Authentification** : Désactivée (`online-mode=false`) - comptes crack acceptés - **Type monde**: FLAT
- **PvP** : Désactivé (`pvp=false`) - **RAM**: 2 GB (configurable)
- **Monstres** : Désactivés (`spawn-monsters=false`) - **Authentification**: Désactivée (comptes crack acceptés)
- **Vol** : Autorisé (`allow-flight=true`) - **PvP**: Désactivé
- **Vol**: Autorisé
### Ressources Docker ### Modifier la mémoire
- **RAM Max** : 2 GB (`-Xmx2G`) Éditer `docker-compose.yml`:
- **RAM Init** : 1 GB (`-Xms1G`) ```yaml
- **GC** : G1GC (optimisé) environment:
- **File descriptors** : 65535 (ulimit configuré) 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 ## 🎯 Plugins installés
### WorldEdit ### WorldEdit 5.6 (Édition terrain)
É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 :
``` ```
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 ## 🔐 Gestion des joueurs
- `white-list.txt` - Liste blanche (si activée)
- `banned-players.txt` - Joueurs bannis
- `banned-ips.txt` - IPs bannies
## 🛠️ Commandes serveur ### Donner les droits admin (OP)
### 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** :
```bash ```bash
cd server-final # Via RCON
tar -czf backup-$(date +%Y%m%d-%H%M).tar.gz world/ DIM1/ DIM-1/ 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 ```bash
rm -rf world/ DIM1/ DIM-1/ docker exec mc-nationsglory rcon-cli --password <mdp> "deop <pseudo>"
tar -xzf backup-YYYYMMDD-HHMM.tar.gz ```
### 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 ### Réinitialiser le monde
⚠️ **Attention** : Supprime toutes les constructions !
```bash ```bash
cd server-final docker-compose down
rm -rf world/ DIM1/ DIM-1/ rm -rf world/
# Au prochain démarrage, un nouveau monde FLAT sera généré docker-compose up -d # Un nouveau monde FLAT sera créé
``` ```
### Nettoyer les logs ### Nettoyer les logs
```bash ```bash
cd server-final docker exec mc-nationsglory sh -c "rm -f /data/*.log /data/*.lck"
rm -f *.log *.log.* *.lck docker-compose restart
rm -rf crash-reports/*
``` ```
## 📦 Mods installés ---
**21 mods actifs** : ## 📦 Mods inclus (21 mods)
- Chisel - Blocs décoratifs
- WesterosBlocks - Blocs Game of Thrones - **Chisel** - Blocs décoratifs variés
- BiblioCraft - Meubles et décorations - **WesterosBlocks** - Blocs Game of Thrones
- Autoutils - Outils automatiques - **BiblioCraft** - Meubles et décorations
- CustomNPCs - PNJs personnalisés - **CustomNPCs** - PNJs personnalisables
- Flan's Mod - Véhicules et armes - **Flan's Mod** - Véhicules et armes
- Netherrocks - Minerais du Nether - **UniversalElectricity** - Système électrique
- TLSpecialArmor - Armures spéciales - **Netherrocks** - Nouveaux minerais
- UniversalElectricity - Électricité - **WeaponMod** - Armes modernes
- WeaponMod - Armes - **TLSpecialArmor** - Armures spéciales
- AquaTweaks - Modifications aquatiques - **AquaTweaks** - Modifications aquatiques
- Et plus... - **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 ## 🐛 Dépannage
### Le serveur ne démarre pas ### 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 ```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` # Vérifier que le serveur écoute
2. Le serveur accepte les comptes crack nc -zv localhost 25565
```
### Lag/performances ### 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`) # Redémarrer
2. Réduire `view-distance` dans `server.properties` docker-compose down
3. Limiter les entités : `/killall [type]` docker-compose up -d
## 🌍 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
``` ```
### 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 ## 📊 Informations techniques
**Forge** : 9.11.1.965
**Minecraft** : 1.6.4 - **Version Minecraft**: 1.6.4
**Java** : 7 (via Docker) - **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** 🚀