# NationsGlory Web Admin Panel d'administration web pour serveur Minecraft 1.6.4 NationsGlory. > 📌 **Note**: Pour un dĂ©ploiement rapide du serveur complet (Minecraft + Web Admin), consultez le [README principal](../README.md) et utilisez le script `../deploy.sh`. ## 🚀 Quick Start ### DĂ©ploiement avec le serveur Minecraft (RecommandĂ©) Depuis le dossier parent : ```bash cd .. ./deploy.sh ``` ### DĂ©ploiement standalone Si vous souhaitez dĂ©ployer uniquement l'application web : ```bash # 1. Configuration cp .env.example .env nano .env # Configurez SESSION_SECRET et RCON_PASSWORD # 2. DĂ©marrage docker-compose up -d # Le panel sera accessible sur http://localhost:4001 ``` ## ✹ FonctionnalitĂ©s ### 🎼 Gestion du Serveur - **Console RCON** : Interface style terminal Linux pour exĂ©cuter des commandes - **Historique des commandes** : Sauvegarde persistante avec recherche et suppression - **ContrĂŽle du serveur** : ArrĂȘt et redĂ©marrage avec cooldown configurable - **ParamĂštres en temps rĂ©el** : Modification des propriĂ©tĂ©s serveur sans redĂ©marrage ### đŸ‘„ Gestion des Joueurs - **Liste des joueurs connectĂ©s** : Affichage temps rĂ©el avec support des codes couleur Minecraft (§) - **Compteur de joueurs** : Affichage X/Y dans le dashboard - **Whitelist** : Ajout/suppression de joueurs autorisĂ©s - **Logs** : Consultation des logs serveur ### 🔐 SĂ©curitĂ© - **Authentification OP** : Seuls les opĂ©rateurs du serveur peuvent se connecter - **Sessions persistantes** : Gestion sĂ©curisĂ©e des sessions - **Masquage des mots de passe** : Les mots de passe RCON ne s'affichent pas en clair ## đŸ—ïž Architecture \`\`\` WebNationsGlory/ ├── backend/ │ ├── src/ │ │ ├── routes/ # API endpoints │ │ ├── utils/ # RCON client │ │ └── server.js # Express app │ └── data/ │ └── users.json # Utilisateurs ├── frontend/ │ └── public/ │ ├── css/ # Styles │ ├── js/ # SPA vanilla JS │ └── index.html └── docker-compose.yml # Orchestration \`\`\` ## 🔧 Configuration ### PrĂ©requis - Docker & Docker Compose - Serveur Minecraft 1.6.4 avec RCON activĂ© - Port 25575 (RCON) et 4001 (Web) disponibles ### Variables d'environnement \`\`\`env SERVER_DIR=/mc-server # Chemin vers le serveur Minecraft RCON_HOST=localhost # HĂŽte RCON RCON_PORT=25575 # Port RCON RCON_PASSWORD=votre_mot_de_passe # Mot de passe RCON SESSION_SECRET=secret_securise # Secret pour les sessions \`\`\` ### Serveur Minecraft (server.properties) \`\`\`properties enable-rcon=true rcon.port=25575 rcon.password=votre_mot_de_passe \`\`\` ## 📚 Documentation - [QUICKSTART.md](QUICKSTART.md) - Guide de dĂ©marrage rapide - [CONFIGURATION.md](CONFIGURATION.md) - Configuration dĂ©taillĂ©e - [DEPLOYMENT.md](DEPLOYMENT.md) - Guide de dĂ©ploiement - [MAINTENANCE.md](MAINTENANCE.md) - Maintenance et dĂ©pannage - [CHANGELOG.md](CHANGELOG.md) - Historique des versions ## 🔐 PremiĂšre Connexion 1. DĂ©marrer le serveur Minecraft 2. DĂ©marrer le panel web : \`docker-compose up -d\` 3. AccĂ©der Ă  http://localhost:4001 4. Se connecter avec un compte OP du serveur Minecraft 5. Le systĂšme vĂ©rifie automatiquement les permissions OP dans \`ops.txt\` ## đŸ› ïž DĂ©veloppement ### Structure Backend - **Express.js** : Serveur web Node.js 18 - **RCON Client** : ImplĂ©mentation complĂšte du protocole Minecraft RCON (Int32LE) - **Sessions** : express-session avec MemoryStore - **Authentification** : bcryptjs pour le hachage ### Structure Frontend - **Vanilla JavaScript** : SPA sans framework - **Style Terminal** : Console RCON avec apparence Linux shell - **API REST** : Communication avec le backend ## ⚠ Notes Importantes - Le serveur Minecraft doit ĂȘtre dĂ©marrĂ© **avant** le panel web - Seuls les joueurs dans \`ops.txt\` peuvent se connecter - L'historique RCON est sauvegardĂ© dans un volume Docker nommĂ© \`web-admin\` - Le serveur utilise \`network_mode: host\` pour accĂ©der au RCON local - Compatible uniquement avec Minecraft 1.6.4 (codes couleur §) ## 📩 Volumes Docker - \`mc-server\` : DonnĂ©es du serveur Minecraft (lecture/Ă©criture) - \`web-admin\` : DonnĂ©es persistantes du panel (.web-admin/) ## 🐛 DĂ©pannage ### Le panel ne se connecte pas au RCON 1. VĂ©rifier que \`enable-rcon=true\` dans \`server.properties\` 2. VĂ©rifier le mot de passe RCON 3. VĂ©rifier que le serveur Minecraft est dĂ©marrĂ© ### Les joueurs ne s'affichent pas 1. VĂ©rifier que le dossier \`/world/players/\` existe 2. VĂ©rifier que \`usercache.json\` est prĂ©sent ### Impossible de modifier les paramĂštres 1. VĂ©rifier que le volume \`mc-server\` n'est pas en lecture seule 2. VĂ©rifier les permissions sur \`server.properties\` ## 📄 Licence Projet privĂ© - NationsGlory Server