Serveur ou VM Linux
Installer PNeX sur Debian ou Ubuntu — bare metal, hyperviseur ou VM cloud
Prérequis
- Debian 12/13 ou Ubuntu 22.04+, amd64 ou arm64.
- 4 Go de RAM (8 Go recommandés), 16 Go de disque libre.
- Ports 80 et 443 libres. Docker Engine et le plugin compose sont installés s'ils manquent.
Sur un réseau local (labo, usine, VM Proxmox ou VirtualBox)
curl -fsSL https://raw.githubusercontent.com/Pnex/pnex-deploy/main/install.sh \
| sudo bash -s -- --admin-user [email protected]Le serveur est nommé <hostname>.local (mDNS) et le TLS utilise une autorité de
certification générée sur le serveur, comme sur un Raspberry Pi. Pour une VM,
utilisez une carte réseau en pont (bridge) pour que les devices du réseau
l'atteignent.
Sur un serveur public
Avec un enregistrement DNS pointant vers le serveur, utilisez Let's Encrypt :
curl -fsSL https://raw.githubusercontent.com/Pnex/pnex-deploy/main/install.sh \
| sudo bash -s -- --domain pnex.example.com --tls cloud \
--acme-email [email protected] --admin-user [email protected]Pas de nom de domaine ? Construisez-en un à partir de l'IP publique avec sslip.io : la VM obtient un certificat Let's Encrypt sans aucun DNS à gérer :
curl -fsSL https://raw.githubusercontent.com/Pnex/pnex-deploy/main/install.sh \
| sudo bash -s -- --domain sslip --ip 203.0.113.7 --tls cloud \
--acme-email [email protected] --admin-user [email protected]--ip est nécessaire quand la VM ne voit qu'une adresse privée derrière le NAT
du fournisseur. Les ports 80 et 443 doivent être ouverts sur internet.
Démo : une VM cloud neuve
Une vraie installation de 0.1.0-beta.2 sur une VM Ubuntu 26.04 neuve, avec IP
publique, sslip.io et Let's Encrypt (téléchargements raccourcis, mot de passe
admin masqué). L'installeur met lui-même Docker en place, puis télécharge les
images, démarre la stack et vérifie sa santé :
Une fois terminé, pnexctl status liste les services, et le certificat servi
sur le nom sslip.io est bien émis par Let's Encrypt :
Le mot de passe admin est affiché une seule fois à la fin de l'installation.
Si vous l'avez manqué, relisez-le dans le .env de l'installation :
sudo grep PNEX_ADMIN_PASSWORD /opt/pnex/.envIl n'initialise le compte qu'au tout premier démarrage : changez-le après la
première connexion (la valeur du .env n'est alors plus valable).
Options
| Option | Rôle |
|---|---|
--profile raspi|server | réglage mémoire (auto : raspi sous 6 Go de RAM) |
--storage fs|s3 | firmwares et médias en base / sur un volume, ou dans un RustFS embarqué |
--smtp-url … | mail sortant pour l'inscription et la réinitialisation de mot de passe |
--version latest|0.1.0-beta.5 | la version à installer : latest (défaut, dernier main vert) ou une release publiée, conservée aux mises à jour |
--tag <tag d'image> | forcer seulement le tag d'image (ex. main-<sha>) |
install.sh --help liste tout ; l'exploitation passe par pnexctl (status,
logs, upgrade, backup, log-level).

