Raspberry Pi
Installer PNeX sur un Raspberry Pi 4 ou 5 en une commande
Prérequis
| Minimum | Recommandé | |
|---|---|---|
| Carte | Raspberry Pi 4 (4 Go) | Raspberry Pi 5 (8 Go) |
| OS | Raspberry Pi OS Lite 64 bits (bookworm ou trixie) | Pi OS trixie |
| Disque | 16 Go libres | un SSD USB 3 ou NVMe plutôt que la carte SD |
| Réseau | un réseau local avec mDNS | une réservation DHCP pour le Pi |
Raspberry Pi OS 32 bits n'est pas pris en charge.
Installer
Nommez le Pi pnex (Raspberry Pi Imager, hostname), démarrez-le, puis :
curl -fsSL https://raw.githubusercontent.com/Pnex/pnex-deploy/main/install.sh \
| sudo bash -s -- --admin-user [email protected] --admin-password 'choose-a-strong-one'L'installeur apporte Docker, génère tous les secrets, crée une autorité de
certification privée et démarre la stack. Le profil raspi est choisi
automatiquement : petits buffers PostgreSQL, caches OpenObserve plafonnés, un
seul assemblage 360° à la fois, logs limités aux erreurs et bornés pour ménager
la carte SD.
Ouvrez https://pnex.local/ et faites confiance à l'autorité de certification
du serveur une fois par appareil client (le Quickstart
explique comment).
Démo : un Pi neuf, de l'installation à la connexion
Enregistrée sur l'image officielle Raspberry Pi OS Lite 64 bits (trixie,
2026-09-15), démarrée dans QEMU comme une carte arm64 émulée : les images arm64
de 0.1.0-beta.2, le profil raspi, mDNS et la CA locale sont les vrais.
L'émulation est plusieurs fois plus lente qu'un Pi : l'installation y a pris
40 minutes (quelques minutes sur un Pi 4 ou 5), d'où le --timeout 1800 de
l'enregistrement ; sur un vrai Pi, la valeur par défaut suffit. La lecture est
accélérée et le mot de passe admin masqué.
Mot de passe admin et autorité de certification
Le mot de passe admin généré est affiché une seule fois à la fin de
l'installation, et conservé dans le .env de l'installation. Le certificat du
serveur est signé par une CA créée sur le Pi : notez son empreinte SHA-256, les
apps vous demandent de la confirmer.
sudo grep PNEX_ADMIN_PASSWORD /opt/pnex/.env
sudo openssl x509 -in /opt/pnex/state/pki/ca.pem -noout -fingerprint -sha256
sudo pnexctl trust-help # comment faire confiance à la CA, par systèmeFaire confiance à la CA sur chaque client
Tant que la CA n'est pas reconnue, les navigateurs affichent une alerte de
certificat (NET::ERR_CERT_AUTHORITY_INVALID) sur https://pnex.local/.
Faites-lui confiance une fois par appareil client. La CA est servie sur
https://pnex.local/api/v1/meta/ca (acceptez l'alerte une fois pour la
télécharger) et reste sur le Pi dans /opt/pnex/state/pki/ca.pem.
| Client | Comment |
|---|---|
| Ubuntu / Debian desktop | curl -fsSL https://raw.githubusercontent.com/Pnex/pnex-deploy/main/client/setup-ubuntu.sh | bash -s -- --server pnex.local (magasin système, Chrome/Chromium, Firefox, accès série USB) |
| Windows | double-clic sur pnex-ca.crt → Installer le certificat → Ordinateur local → Autorités de certification racines de confiance, puis redémarrez le navigateur |
| macOS | sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain pnex-ca.crt |
| Android | Paramètres → Sécurité → Chiffrement et identifiants → Installer un certificat → Certificat CA. L'app PNeX épingle la CA à la première connexion. |
| iOS | ouvrez le .crt dans Safari → Profil téléchargé → Installer, puis Général → Informations → Réglages des certificats |
| Firefox | son propre magasin : Paramètres → Vie privée et sécurité → Certificats → Afficher → Autorités → Importer |
Se connecter depuis un navigateur
Ouvrez https://pnex.local/ et connectez-vous avec l'email et le mot de passe
admin : la première connexion crée votre profil et une organisation
personnelle.



Trouver le serveur avec l'app desktop (scan LAN)
Les apps desktop et Android trouvent le serveur sans saisir son adresse. Au
premier lancement, indiquez la plage réseau (192.168.1. sur la plupart des
réseaux domestiques) et cliquez sur Scanner : chaque serveur PNeX de la
plage est listé avec sa version.

Avec les bêtas 0.1, saisissez https://pnex.local dans le champ d'adresse et
cliquez sur Se connecter à ce serveur plutôt que sur le Se connecter du
résultat de scan (la connexion est refusée sur l'adresse IP). L'app affiche
ensuite l'empreinte de la CA : vérifiez qu'elle correspond à celle affichée
sur le Pi.

Faire confiance et se connecter épingle la CA dans l'app, puis Se connecter à PNeX ouvre la page de connexion dans votre navigateur ; l'app est connectée à votre retour.

Quand pnex.local ne résout pas
Android avant 12 et les navigateurs en DNS-over-HTTPS ignorent mDNS. Donnez au Pi une réservation DHCP et relancez l'installeur avec un nom servi par le DNS de votre box, ou avec l'adresse IP (les passkeys sont alors indisponibles) :
curl -fsSL https://raw.githubusercontent.com/Pnex/pnex-deploy/main/install.sh \
| sudo bash -s -- --domain pnex.homeLes autres options sont dans Noms et TLS.
Les devices flashés pour l'ancien nom doivent être reflashés.
Conseils
- SSD : la base et la télémétrie écrivent en continu ; démarrez le Pi sur un
SSD USB, ou au minimum utilisez une carte haute endurance et faites des
sudo pnexctl backupréguliers. - Taille de page du Raspberry Pi 5 : si un conteneur redémarre en boucle avec
Unsupported system page size, ajoutez
kernel=kernel8.imgdans/boot/firmware/config.txtet redémarrez. - Mises à jour :
sudo pnexctl upgrade(les secrets sont conservés).

