feat: Configuration FLAT + Documentation RCON complète
- Configure monde en FLAT par défaut - Active mode créatif (gamemode=1) - Accepte comptes crack (online-mode=false) - Ajoute CONFIGURATION.md avec guide RCON détaillé - Améliore README.md avec navigation - Crée INDEX.md pour navigation docs - Nettoie docker-compose.yml
This commit is contained in:
312
CONFIGURATION.md
Normal file
312
CONFIGURATION.md
Normal file
@@ -0,0 +1,312 @@
|
||||
# 🔧 Configuration avancée - NationsGlory 1.6.4
|
||||
|
||||
## 📝 Fichiers de configuration
|
||||
|
||||
### docker-compose.yml
|
||||
Configuration Docker principale. Variables importantes:
|
||||
|
||||
```yaml
|
||||
environment:
|
||||
SERVER_PORT: "25565" # Port du serveur Minecraft
|
||||
RCON_PORT: "25575" # Port RCON (administration)
|
||||
RCON_PASSWORD: "minecraft" # ⚠️ À CHANGER pour la sécurité
|
||||
ONLINE_MODE: "FALSE" # Accepte les comptes crack
|
||||
GAMEMODE: "1" # 0=Survie, 1=Créatif, 2=Aventure
|
||||
LEVEL_TYPE: "FLAT" # Type de monde (FLAT, DEFAULT, LARGEBIOMES)
|
||||
MEMORY: "2G" # RAM maximale
|
||||
INIT_MEMORY: "1G" # RAM initiale
|
||||
```
|
||||
|
||||
### server.properties
|
||||
Généré automatiquement. Modifications manuelles nécessaires pour:
|
||||
- `online-mode=false` (authentification crack)
|
||||
- `level-type=FLAT` (monde plat)
|
||||
- `gamemode=1` (mode créatif)
|
||||
- `rcon.password=VotreMotDePasse` (mot de passe RCON)
|
||||
|
||||
⚠️ **Redémarrez après modification**: `docker-compose restart`
|
||||
|
||||
---
|
||||
|
||||
## 🔐 Configuration RCON sécurisée
|
||||
|
||||
### 1. Définir le mot de passe RCON
|
||||
|
||||
**Méthode 1: Avant le premier démarrage**
|
||||
```bash
|
||||
# Éditer server.properties
|
||||
echo "rcon.password=VotreMotDePasseSecurise" >> server.properties
|
||||
echo "enable-rcon=true" >> server.properties
|
||||
```
|
||||
|
||||
**Méthode 2: Serveur en cours**
|
||||
```bash
|
||||
# Arrêter le serveur
|
||||
docker-compose down
|
||||
|
||||
# Modifier la configuration
|
||||
sed -i 's/^rcon.password=.*/rcon.password=NouveauMotDePasse/' server.properties
|
||||
|
||||
# Redémarrer
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
### 2. Tester RCON
|
||||
|
||||
```bash
|
||||
# Remplacer 192.168.1.252 par votre IP serveur
|
||||
docker exec mc-nationsglory rcon-cli \
|
||||
--host 192.168.1.252 \
|
||||
--port 25575 \
|
||||
--password VotreMotDePasse \
|
||||
"list"
|
||||
```
|
||||
|
||||
### 3. Mode interactif
|
||||
|
||||
```bash
|
||||
docker exec -it mc-nationsglory rcon-cli \
|
||||
--host 192.168.1.252 \
|
||||
--port 25575 \
|
||||
--password VotreMotDePasse
|
||||
|
||||
# Dans la console RCON:
|
||||
> list
|
||||
> op JoueurAdmin
|
||||
> save-all
|
||||
> stop
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🌍 Configuration du monde
|
||||
|
||||
### Réinitialiser le monde en FLAT
|
||||
|
||||
```bash
|
||||
# 1. Arrêter le serveur
|
||||
docker-compose down
|
||||
|
||||
# 2. Supprimer l'ancien monde
|
||||
sudo rm -rf world world_*
|
||||
|
||||
# 3. Modifier server.properties
|
||||
sed -i 's/level-type=.*/level-type=FLAT/' server.properties
|
||||
|
||||
# 4. Redémarrer (génère un nouveau monde FLAT)
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
### Types de mondes disponibles
|
||||
|
||||
- **FLAT** : Monde plat (idéal construction)
|
||||
- **DEFAULT** : Monde normal avec biomes
|
||||
- **LARGEBIOMES** : Biomes plus grands
|
||||
- **AMPLIFIED** : Relief extrême (nécessite plus de RAM)
|
||||
|
||||
---
|
||||
|
||||
## 🎮 Gestion des joueurs
|
||||
|
||||
### Donner les droits OP
|
||||
|
||||
**Via RCON:**
|
||||
```bash
|
||||
docker exec mc-nationsglory rcon-cli \
|
||||
--host 192.168.1.252 \
|
||||
--port 25575 \
|
||||
--password VotreMotDePasse \
|
||||
"op NomJoueur"
|
||||
```
|
||||
|
||||
**Manuellement:**
|
||||
```bash
|
||||
# Ajouter au fichier ops.txt
|
||||
echo "NomJoueur" >> ops.txt
|
||||
docker-compose restart
|
||||
```
|
||||
|
||||
### Bannir/Débannir
|
||||
|
||||
```bash
|
||||
# Bannir
|
||||
docker exec mc-nationsglory rcon-cli --host IP --port 25575 --password MDP "ban JoueurMechant"
|
||||
|
||||
# Débannir
|
||||
docker exec mc-nationsglory rcon-cli --host IP --port 25575 --password MDP "pardon JoueurMechant"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 💾 Sauvegardes automatiques
|
||||
|
||||
### Script de sauvegarde
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
# save-world.sh
|
||||
|
||||
BACKUP_DIR="$HOME/backups/nationsglory"
|
||||
DATE=$(date +%Y%m%d_%H%M%S)
|
||||
|
||||
# Créer le dossier de sauvegarde
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
|
||||
# Forcer la sauvegarde
|
||||
docker exec mc-nationsglory rcon-cli \
|
||||
--host 192.168.1.252 \
|
||||
--port 25575 \
|
||||
--password VotreMotDePasse \
|
||||
"save-all"
|
||||
|
||||
# Attendre la fin
|
||||
sleep 5
|
||||
|
||||
# Archiver
|
||||
cd /chemin/vers/serveur
|
||||
tar -czf "$BACKUP_DIR/world_$DATE.tar.gz" world/
|
||||
|
||||
echo "✅ Sauvegarde créée: $BACKUP_DIR/world_$DATE.tar.gz"
|
||||
```
|
||||
|
||||
### Automatiser avec cron
|
||||
|
||||
```bash
|
||||
# Éditer crontab
|
||||
crontab -e
|
||||
|
||||
# Sauvegarder toutes les 6 heures
|
||||
0 */6 * * * /chemin/vers/save-world.sh >> /var/log/minecraft-backup.log 2>&1
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Optimisation performances
|
||||
|
||||
### Augmenter la RAM
|
||||
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
environment:
|
||||
MEMORY: "4G" # RAM max
|
||||
INIT_MEMORY: "2G" # RAM initiale
|
||||
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
memory: 5G # Limite Docker
|
||||
```
|
||||
|
||||
### Options JVM optimisées
|
||||
|
||||
```yaml
|
||||
command:
|
||||
- sh
|
||||
- -c
|
||||
- |
|
||||
cd /data
|
||||
exec java \
|
||||
-Xms2G -Xmx4G \
|
||||
-XX:+UseG1GC \
|
||||
-XX:+ParallelRefProcEnabled \
|
||||
-XX:MaxGCPauseMillis=200 \
|
||||
-XX:+UnlockExperimentalVMOptions \
|
||||
-XX:+DisableExplicitGC \
|
||||
-XX:G1NewSizePercent=30 \
|
||||
-XX:G1MaxNewSizePercent=40 \
|
||||
-XX:G1HeapRegionSize=8M \
|
||||
-jar mcpc.jar nogui
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔍 Monitoring
|
||||
|
||||
### Voir les logs en temps réel
|
||||
|
||||
```bash
|
||||
# Tous les logs
|
||||
docker logs -f mc-nationsglory
|
||||
|
||||
# Sans spam Forge (filtrer les >)
|
||||
docker logs -f mc-nationsglory 2>&1 | sed -u '/^>/d'
|
||||
|
||||
# Rechercher des erreurs
|
||||
docker logs mc-nationsglory 2>&1 | grep -i "error\|exception"
|
||||
```
|
||||
|
||||
### Surveiller les ressources
|
||||
|
||||
```bash
|
||||
# Utilisation CPU/RAM
|
||||
docker stats mc-nationsglory
|
||||
|
||||
# Processus Java
|
||||
docker exec mc-nationsglory ps aux | grep java
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🐛 Dépannage courant
|
||||
|
||||
### Problème: "Failed to verify username"
|
||||
**Cause**: `online-mode=true`
|
||||
**Solution**:
|
||||
```bash
|
||||
docker exec mc-nationsglory sed -i 's/online-mode=true/online-mode=false/' /data/server.properties
|
||||
docker-compose restart
|
||||
```
|
||||
|
||||
### Problème: RCON "authentication failed"
|
||||
**Cause**: Mot de passe incorrect ou vide
|
||||
**Solution**:
|
||||
```bash
|
||||
# Vérifier le mot de passe
|
||||
docker exec mc-nationsglory grep "rcon.password" /data/server.properties
|
||||
|
||||
# Le définir
|
||||
docker exec mc-nationsglory sed -i 's/^rcon.password=.*/rcon.password=NouveauMDP/' /data/server.properties
|
||||
docker-compose restart
|
||||
```
|
||||
|
||||
### Problème: Le monde n'est pas FLAT
|
||||
**Solution**:
|
||||
```bash
|
||||
docker-compose down
|
||||
sudo rm -rf world world_*
|
||||
sed -i 's/level-type=.*/level-type=FLAT/' server.properties
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
### Problème: Serveur lag
|
||||
**Solutions**:
|
||||
1. Augmenter RAM (voir Optimisation)
|
||||
2. Réduire view-distance dans server.properties: `view-distance=8`
|
||||
3. Nettoyer les logs: `docker exec mc-nationsglory rm -f /data/*.log`
|
||||
|
||||
---
|
||||
|
||||
## 📊 Variables d'environnement complètes
|
||||
|
||||
| Variable | Valeur par défaut | Description |
|
||||
|----------|------------------|-------------|
|
||||
| `SERVER_PORT` | 25565 | Port Minecraft |
|
||||
| `RCON_PORT` | 25575 | Port RCON |
|
||||
| `RCON_PASSWORD` | minecraft | Mot de passe RCON |
|
||||
| `ENABLE_RCON` | true | Activer RCON |
|
||||
| `ONLINE_MODE` | FALSE | Authentification Mojang |
|
||||
| `GAMEMODE` | 1 | Mode de jeu (0/1/2) |
|
||||
| `DIFFICULTY` | 1 | Difficulté (0-3) |
|
||||
| `LEVEL_TYPE` | FLAT | Type de monde |
|
||||
| `MEMORY` | 2G | RAM maximale |
|
||||
| `INIT_MEMORY` | 1G | RAM initiale |
|
||||
| `JVM_OPTS` | (voir docker-compose.yml) | Options Java |
|
||||
|
||||
---
|
||||
|
||||
## 🔗 Ressources
|
||||
|
||||
- [Documentation MCPC+](https://www.spigotmc.org/wiki/mcpc-plus/)
|
||||
- [Commandes WorldEdit](https://worldedit.enginehub.org/en/latest/commands/)
|
||||
- [Commandes Essentials](https://essinfo.xeya.me/commands.html)
|
||||
- [Options JVM Minecraft](https://aikar.co/2018/07/02/tuning-the-jvm-g1gc-garbage-collector-flags-for-minecraft/)
|
||||
Reference in New Issue
Block a user