Installer NexCMP
Le programme d'installation est un script unique fourni par votre serveur de licences. Il vérifie la machine, active votre licence, télécharge et valide le programme, installe les services et configure (facultativement) nginx avec un certificat Let's Encrypt.
Avant de commencer
- Un serveur répondant aux prérequis, et un accès root.
- Votre clé de licence et votre domaine principal depuis votre page de licence — voir Licence et achat.
- Un enregistrement DNS pour le domaine — voir DNS et Cloudflare. Vous pouvez également commencer par l'installation et corriger le DNS plus tard ; l'installateur vous indique ce qui manque et peut simplement être réexécuté.
Installation
- Connectez-vous au serveur et passez en root (ou préfixez par
sudo). - Exécutez la commande depuis votre page de licence. Elle se présente ainsi :
bash
curl -fsSL https://nexcmp.com/install.sh | sudo bash -s -- \
--license NXC-XXXXX-XXXXX-XXXXX-XXXXX \
--domain cloud.example.com \
--email admin@example.com- Attendez la fin des étapes de validation. Une nouvelle installation prend quelques minutes ; le premier démarrage crée le schéma de base de données et peut prendre jusqu'à une minute sur les disques lents.
- Lisez le récapitulatif à la fin. Il affiche les URL du portail et d'administration, le code de configuration, ainsi que l'étape suivante.

Paramètres
| Paramètre | Valeur par défaut | Description |
|---|---|---|
--license KEY | requis lors de la première installation | La clé de licence. |
--domain NAME | requis lors de la première installation | Domaine principal. Doit correspondre à la licence. https:// et les chemins finaux sont supprimés. |
--email ADDRESS | aucun | E-mail de contact pour les avis d'expiration Let's Encrypt. Sans lui, le certificat est enregistré sans e-mail. |
--port N | 3000 | Port local du panneau (1–65535). |
--no-nginx | désactivé | N'installez ni ne configurez nginx / TLS. Utilisez cette option si vous utilisez votre propre reverse proxy ou si vous souhaitez d'abord découvrir NexCMP. |
--behind-cloudflare | détection automatique | Force le mode « le domaine passe par le proxy Cloudflare ». Normalement détecté via le DNS. |
--channel NAME | stable | Canal de version. |
Réexécuter le programme d'installation sans paramètres réutilise ceux enregistrés (/etc/nexcmp/install.conf) et met à niveau en toute sécurité, en conservant les données, la configuration et les comptes. C'est exactement ce que fait sudo nexcmp update.
Actions réalisées par l'installateur
- Vérifie la machine — Ubuntu 22.04/24.04, x86_64, au moins 2 Go de RAM, 8 Go d'espace disque disponible.
- Installe les paquets nécessaires (
curl,zstd,openssl,python3,openssh-client…). - Crée l'utilisateur de service
nexcmpet les répertoires:/opt/nexcmp(programme, appartenant à root, en lecture seule pour le service),/etc/nexcmp(configuration),/var/lib/nexcmp(données),/var/log/nexcmp. - Active la licence pour le domaine et enregistre un ID d'instance fixe pour cette machine.
- Télécharge la version la plus récente à laquelle vous avez droit, puis vérifie son empreinte SHA-256 et sa signature Ed25519. Une version sans signature valide est refusée. Il ne rétrograde jamais une version en cours d'exécution plus récente.
- Écrit la configuration et les unités systemd (
nexcmp,nexcmp-vmd,nexcmp-update) et démarre les services; il attend que/healthzréponde. - Configure nginx et TLS (sauf
--no-nginx): obtient un certificat Let's Encrypt avec certbot (challenge webroot) pour le domaine et pouradmin.<domain>/partner.<domain>lorsque ces noms sont également résolus. Si le DNS ne pointe pas encore vers ce serveur (ou Cloudflare), il ignore cette étape et le signale. - Affiche un récapitulatif avec les URL et, si aucun administrateur n'existe encore, le code de configuration.
Le port du panel (3000)
- Lors de la première installation, le panel écoute sur
0.0.0.0:3000pour que vous puissiez ouvrir l'assistant de configuration surhttp://<server-IP>:3000/setup. - Une fois l'assistant terminé et TLS actif, le panel écoute uniquement sur
127.0.0.1; nginx relaiehttps://<domain>vers celui-ci. - En cas d'urgence (nginx en panne, DNS incorrect), vous pouvez ouvrir le port pendant une durée limitée:
sudo nexcmp open-port 30(30 minutes, puis il se referme de lui-même) — ou utiliser un tunnel SSH:ssh -L 3000:127.0.0.1:3000 <server>et ouvrirhttp://127.0.0.1:3000/.
HTTP en clair
Le port 3000 est en HTTP en clair. Utilisez-le uniquement pour l'assistant de configuration sur un réseau de confiance, ou via un tunnel SSH. Ne le laissez pas ouvert.
Installation sans domaine public (lab ou test)
Vous pouvez effectuer l'installation sur une machine sans DNS pour le moment:
bash
curl -fsSL https://nexcmp.com/install.sh | sudo bash -s -- \
--license NXC-XXXXX-XXXXX-XXXXX-XXXXX --domain lab.example.com --no-nginxOuvrez ensuite l'assistant via un tunnel SSH (ssh -L 3000:127.0.0.1:3000 <server>, accédez à http://127.0.0.1:3000/setup). Réexécutez l'installateur sans --no-nginx une fois le DNS configuré.
Docker et Kubernetes
Aucune image de conteneur n'est publiée. L'installateur (une installation systemd native) est la méthode d'installation prise en charge.
Vérification
bash
sudo nexcmp statusVous devriez voir la version, nexcmp: active, nexcmp-vmd: active, healthz: ok et — jusqu'à ce que l'assistant soit terminé — le code de configuration. Poursuivez avec l'assistant de configuration.
Si un problème survient, consultez Erreurs d'installation.