Installation sur Docker
Ce guide installe le Webserver, une sonde Monitor et un Integrator avec Docker Compose, a partir des images officielles.
Prerequis
- Un environnement Docker fonctionnel (hote Linux, amd64)
- Docker Compose v2 (
docker compose; l’ancien binairedocker-composefonctionne de la meme facon) - Vos fichiers de licence Mugnsoft
Sentinel Agent
1. Creer un projet Compose
Creez un dossier pour votre configuration Compose :
mkdir mugnsoft && cd mugnsoft
2. Creer le fichier .env
Ce fichier fixe la version des images, les ports de l’hote et l’emplacement des donnees. Copiez-le et adaptez-le :
cat > .env << 'EOF'
## Version des images : les tags Docker Hub sont MAJEURE.MINEURE (4.2, 4.1, ...)
## utilisez le tag le plus recent liste sur https://hub.docker.com/r/mugnsoft/webserver/tags
MUGNSOFT_VERSION=4.2
## Ports de l'hote
WEBSERVER_PORT_WEB=9092
WEBSERVER_PORT_API=8060
MONITOR_PORT=8061
INTEGRATOR_PORT=8062
## Emplacement des volumes
VOLUME_BASE=${PWD}
## Fuseau horaire des composants
TZ=Europe/Paris
EOF
3. Ajouter les fichiers de licence
Copiez les fichiers de licence recus par email dans le dossier mugnsoft, avec ces noms :
license_MNS_docker.dat(Webserver)license_MNS_integrator_docker.dat(Integrator)
4. Creer le fichier docker-compose.yml
Images Docker
Ce que ce fichier doit conserver, car les images en dependent :
- Le service Webserver s’appelle
webserver: le Monitor et l’Integrator le joignent viawebserver:8050. - Les conteneurs ont des adresses IP fixes : chaque composant enregistre sa propre IP aupres du Webserver, qui s’y reconnecte. Une adresse qui change au redemarrage ferait perdre le composant.
- Les ports des conteneurs sont 8051 (Monitor) et 8053 (Integrator), ceux de la configuration des images.
cat > docker-compose.yml << 'EOF'
networks:
mugnsoft:
ipam:
config:
- subnet: 172.30.10.0/24
services:
webserver:
image: mugnsoft/webserver:${MUGNSOFT_VERSION}
container_name: mugnsoft_webserver
restart: unless-stopped
networks:
mugnsoft:
ipv4_address: 172.30.10.10
ports:
- "${WEBSERVER_PORT_WEB}:9090"
- "${WEBSERVER_PORT_API}:8050"
environment:
- TZ=${TZ}
volumes:
- ${VOLUME_BASE}/webserver_dbs:/home/mugnsoft/webserver/dbs
- ${VOLUME_BASE}/webserver_data:/home/mugnsoft/webserver/data
- ${VOLUME_BASE}/webserver_config:/home/mugnsoft/webserver/config
- ${VOLUME_BASE}/license_MNS_docker.dat:/home/mugnsoft/webserver/license_MNS.dat
# la licence est liee a l'hote : le Webserver lit son machine-id ici
- /etc/machine-id:/host/etc/machine-id:ro
monitor:
image: mugnsoft/monitor:${MUGNSOFT_VERSION}
container_name: mugnsoft_monitor
restart: unless-stopped
networks:
mugnsoft:
ipv4_address: 172.30.10.20
ports:
- "${MONITOR_PORT}:8051"
# sockets bruts pour les moniteurs ping et traceroute
cap_add:
- NET_RAW
environment:
- TZ=${TZ}
volumes:
- ${VOLUME_BASE}/monitor_dbs:/home/mugnsoft/monitor/dbs
- ${VOLUME_BASE}/monitor_data:/home/mugnsoft/monitor/data
- ${VOLUME_BASE}/monitor_config:/home/mugnsoft/monitor/config
depends_on:
- webserver
integrator:
image: mugnsoft/integrator:${MUGNSOFT_VERSION}
container_name: mugnsoft_integrator
restart: unless-stopped
networks:
mugnsoft:
ipv4_address: 172.30.10.30
ports:
- "${INTEGRATOR_PORT}:8053"
environment:
- TZ=${TZ}
volumes:
- ${VOLUME_BASE}/integrator_dbs:/home/mugnsoft/integrator/dbs
- ${VOLUME_BASE}/integrator_data:/home/mugnsoft/integrator/data
- ${VOLUME_BASE}/integrator_config:/home/mugnsoft/integrator/config
- ${VOLUME_BASE}/license_MNS_integrator_docker.dat:/home/mugnsoft/integrator/license_MNS.dat
depends_on:
- webserver
EOF
Si le sous-reseau 172.30.10.0/24 est deja utilise sur votre hote, choisissez-en un autre et adaptez les trois adresses.
5. Creer les dossiers des volumes
Les conteneurs tournent avec un utilisateur d’UID 1000. Creez les dossiers et donnez-les a cet utilisateur, pour que les donnees survivent aux redemarrages et aux mises a jour :
mkdir -p ./{webserver_config,webserver_data,webserver_dbs}
mkdir -p ./{monitor_config,monitor_data,monitor_dbs}
mkdir -p ./{integrator_config,integrator_data,integrator_dbs}
sudo chown -R 1000:1000 ./webserver_* ./monitor_* ./integrator_*
6. Demarrer et verifier les conteneurs
Demarrage :
docker compose up -d
Verifiez que les trois conteneurs tournent :
docker compose ps
Le Monitor et l’Integrator s’enregistrent seuls aupres du Webserver. Le Webserver met un moment a demarrer, ils reessaient donc jusqu’a ce qu’il reponde ; suivez-le avec :
docker compose logs -f monitor integrator
Pour mettre a jour plus tard, changez MUGNSOFT_VERSION dans .env, puis lancez docker compose pull && docker compose up -d. Les donnees restent dans les dossiers des volumes.
7. Configuration minimale
Vous pouvez maintenant acceder a l’interface web du Webserver dans votre navigateur a l’adresse : https://<docker_host>:9092/
Veuillez modifier le mot de passe par defaut apres la connexion.
Acces
A la premiere connexion, l’administrateur par defaut doit choisir un nouveau mot de passe. Vous pourrez le changer ensuite depuis votre profil (l’avatar en haut a droite → Change Password).
Activez les composants Integrator et Monitor installes via docker-compose : ouvrez le menu engrenage → components, faites un clic droit sur chacun et choisissez enable server.
8. Importer des tests de demonstration et une application fictive appelee demo app
Tout d’abord, telechargez les materiaux de demonstration ici.
Vous pouvez importer chaque fichier CSV en suivant les etapes ci-dessous :
- Ouvrez le menu engrenage → import/export ; l’onglet IMPORT est selectionne.
- Deposez chaque fichier CSV sur la zone (ou cliquez sur browse). Le resultat de chaque import s’affiche dans une notification.
- Les moniteurs importes apparaissent sur la page all monitoring.
9. Configurer SMTP (optionnel)
Optionnel
Pour pouvoir envoyer des notifications et des rapports par email, vous devez configurer les parametres SMTP. La configuration se fait comme suit :
- Ouvrez le menu engrenage → components, faites un clic droit sur le noeud webserver et choisissez edit server.
- Dans External services, cliquez sur la tuile SMTP, renseignez le serveur, le port, le compte et le mot de passe, et reglez SSL/TLS (et Verify certificate pour un certificat de confiance).
- Saisissez un Test Email User, cliquez sur ⚡ pour envoyer un test, puis enregistrez avec l’icone disquette. Voir Parametres du webserver.
10. WebDrivers pour le composant Monitor (optionnel)
Optionnel
Au demarrage, le monitor telecharge les WebDrivers requis s’il dispose d’un acces internet :
- Chrome : https://googlechromelabs.github.io/chrome-for-testing/
- Firefox : https://github.com/mozilla/geckodriver/releases/
- Edge : https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
Si l’acces internet est bloque, telechargez-les et placez-les manuellement dans <monitor_installDir>/drivers.
| Navigateur | WebDriver | Lien de telechargement |
|---|---|---|
| Chrome | Chromedriver | Telecharger ici |
| Firefox | Geckodriver | Telecharger ici |
| Edge | msedgedriver | Telecharger ici |
| Safari | Integre | Aucun pilote requis |
11. Installer l’application Mugnsoft Pulse (optionnel)
Optionnel
Cette application permet la generation automatique de code pour les scenarios Mugnsoft. Consultez la documentation de Mugnsoft IDE.
| Type | Lien de telechargement |
|---|---|
| Windows (amd64) | Telecharger ici |
Tous les binaires des composants sont disponibles sur la page de telechargement Mugnsoft.