Orbiter — Installation et prérequis
Configuration requise
| Prérequis | Pris en charge | Recommandé |
|---|---|---|
| Plesk | Obsidian 18.0+ | Dernière version |
| OS | Debian 11 / 12 / 13 · Ubuntu 23 / 24 / 25 · AlmaLinux 8 / 9 / 10 | Debian 12 ou Ubuntu 24 |
| Docker | 20.10+ (installé automatiquement si absent) | Dernière version stable |
| RAM | 2 Go | 4 Go ou plus |
| Disque | 20 Go libres | 50 Go ou plus |
| CPU | 2 cœurs | 4 cœurs ou plus |
| Accès root | Requis pour l'installation | — |
Détail des OS pris en charge
| Famille | Versions testées |
|---|---|
| Debian | 11 (bullseye), 12 (bookworm), 13 (trixie) |
| Ubuntu | 23.04 (lunar), 23.10 (mantic), 24.04 LTS (noble), 24.10 (oracular), 25.04 (plucky) |
| AlmaLinux | 8, 9, 10 |
Installation
Via l'interface Plesk
- Dans Plesk, allez dans Extensions → Mes extensions
- Cliquez sur Téléverser une extension et sélectionnez le paquet
.zip - L'extension configure automatiquement Docker et les services requis
Via la CLI
plesk bin extension --install /path/to/orbiter-1.x.x.zip
Vérification après installation
Une fois l'installation terminée, vérifiez que la configuration s'est bien achevée :
php /opt/psa/admin/plib/modules/orbiter/scripts/post-install.php
plesk repair web -y
Installation Docker existante
Vous faites déjà tourner Docker sur votre serveur (vos propres conteneurs, des réseaux personnalisés) ? Installer Orbiter ne les cassera pas.
Orbiter est conçu pour coexister avec une installation Docker existante :
- Votre configuration est préservée. Orbiter fusionne ses réglages dans
/etc/docker/daemon.jsonsans écraser vos clés existantes (DNS, registre, plages d'adresses, options de journalisation, etc.). Si vous avez déjà défini undefault-address-pools, Orbiter conserve le vôtre. - Aucun redémarrage de Docker tant que des conteneurs tournent. Si Orbiter détecte des conteneurs en cours d'exécution — les vôtres ou ceux d'un tiers — il applique sa configuration par un rechargement à chaud (SIGHUP) : zéro coupure pour vos conteneurs. Un redémarrage de Docker n'est effectué automatiquement que sur un Docker totalement vierge (aucun conteneur).
- Vos réseaux conservent leurs adresses IP. Orbiter crée ses propres réseaux isolés (
orb-net-*), un par domaine. Vos réseaux existants et leurs plages d'IP ne sont jamais touchés. La plage d'adresses d'Orbiter n'affecte que les nouveaux réseaux qu'il crée. - Compatible Docker Swarm. Si Swarm est actif, Orbiter omet automatiquement
live-restore(incompatible avec Swarm), de sorte que le démon ne refuse jamais de démarrer.
Remarque : sur un serveur où Docker faisait déjà tourner des conteneurs, la plage d'adresses plus large d'Orbiter (qui autorise jusqu'à 2048 réseaux) ne devient active qu'au prochain redémarrage de Docker que vous programmez (fenêtre de maintenance). D'ici là, Orbiter fonctionne normalement avec la plage par défaut de Docker — suffisant pour démarrer, prévoyez simplement un redémarrage avant de dépasser ~30 domaines.
Première configuration
1. Construire l'image Docker
Après l'installation, allez dans Orbiter → Réglages → Général et cliquez sur « Construire l'image Docker multi-PHP ». Cette opération prend environ 3 à 5 minutes et n'est à effectuer qu'une seule fois. Toutes les versions de PHP (7.4, 8.0, 8.1, 8.2, 8.3, 8.4, 8.5) sont incluses dans une seule image.
2. Créer votre premier conteneur
- Allez dans l'onglet Sites
- Trouvez un domaine et cliquez sur « Conteneuriser » (ou « Nouveau conteneur »)
- Choisissez :
- Version de PHP (7.4 à 8.5)
- Serveur web : Nginx (recommandé) ou Apache
- MariaDB : à activer si le site a besoin d'une base de données
- Limites de ressources : CPU, RAM, E/S (optionnel, modifiable ultérieurement)
- Cliquez sur Créer — le conteneur démarre automatiquement
3. Vérifier que le conteneur fonctionne
La ligne du domaine affiche un indicateur de statut vert. Le site doit être accessible normalement.
Vue d'ensemble de l'architecture
Plesk Server
├── Orbiter Extension
│ ├── Nginx reverse proxy (host) — proxies traffic to containers
│ └── Container orchestration
│
├── Docker Containers (one per domain)
│ ├── site1.com — PHP 8.2, Nginx, MariaDB
│ ├── site2.com — PHP 8.1, Apache, no DB
│ └── site3.com — PHP 7.4, Nginx, MariaDB
│
└── Shared Storage
└── /var/www/vhosts/* (bind-mounted into containers)
Chemins clés :
- Données des conteneurs :
/var/lib/orbiter/ - Configuration :
/var/lib/orbiter/config.json(SQLite en principal, JSON en repli) - Sauvegardes :
/var/lib/orbiter/backups/ - Instantanés :
/var/lib/orbiter/snapshots/ - Journaux :
/var/lib/orbiter/orbiter.log - Fichiers de verrou :
/opt/psa/var/modules/orbiter/locks/ - Fichiers cron :
/etc/cron.d/orbiter-*
Versions de PHP
Toutes les versions sont préinstallées dans l'image Docker. Aucun téléchargement ni compilation n'est nécessaire lors d'un changement de version.
| Version | Statut |
|---|---|
| PHP 7.4 | Pris en charge (en fin de vie en amont, à utiliser pour les sites hérités) |
| PHP 8.0 | Pris en charge |
| PHP 8.1 | Pris en charge |
| PHP 8.2 | Pris en charge (recommandé pour la plupart des sites) |
| PHP 8.3 | Pris en charge |
| PHP 8.4 | Pris en charge |
| PHP 8.5 | Pris en charge |
Allocation des ports
Orbiter attribue automatiquement des ports à chaque conteneur afin d'éviter les conflits.
| Service | Plage de ports |
|---|---|
| PHP-FPM | 20000–20000 + (index × 16) |
| MariaDB | 60000–60000 + (index × 16) |
Maximum de 2048 conteneurs par serveur (limité par la plage réseau /27).
Mise à jour d'Orbiter
Via l'interface Plesk
Allez dans Extensions → trouvez Orbiter → cliquez sur Mettre à jour.
Ce qui est préservé pendant les mises à jour
- Toutes les configurations de conteneurs
- Tous les fichiers des sites web (jamais touchés)
- Les volumes de base de données
- Les réglages PHP personnalisés
- Les configurations Shield
- Les plannings et destinations de sauvegarde
Après une mise à jour majeure
Une reconstruction de l'image Docker peut être suggérée pour inclure les dernières versions de PHP ou des correctifs de sécurité. Allez dans Réglages → Général → Construire l'image. Les conteneurs existants ne sont pas affectés jusqu'à leur prochaine recréation.
Désinstallation
Via la CLI
plesk bin extension --uninstall orbiter
Ce qui se passe
- Orbiter crée un instantané complet de toutes les configurations de conteneurs
- Tous les domaines reviennent automatiquement au mode Plesk standard
- Les configurations Nginx sont restaurées aux valeurs par défaut de Plesk
- Les fichiers des sites web dans
/var/www/vhosts/sont préservés (jamais supprimés) - Les volumes de base de données sont nettoyés en option (une confirmation vous est demandée)
Télémétrie à la désinstallation
Orbiter envoie un unique événement de désinstallation anonyme à https://orbiter.systems/api/v1/telemetry/event, contenant : la version d'Orbiter, la version de Plesk, la version de PHP, l'OS et un hash de serveur anonyme. Aucun nom de domaine, identifiant ou donnée personnelle n'est inclus. La télémétrie est sur opt-in et peut être désactivée via :
plesk db "UPDATE misc SET val='0' WHERE param='orbiter_telemetry_enabled'"
CMS / Frameworks pris en charge
Orbiter fonctionne avec n'importe quelle application PHP. Les suivants ont été spécifiquement testés et disposent de profils Shield dédiés :
- WordPress
- WooCommerce
- Joomla
- PrestaShop
- Magento
- Drupal
- Laravel
- Toute application PHP personnalisée
Compatibilité Plesk
| Fonctionnalité | Statut |
|---|---|
| Certificats SSL (Let's Encrypt) | ✓ Fonctionne normalement via Plesk |
| Gestion DNS | ✓ Fonctionne normalement via Plesk |
| Gestionnaire de fichiers | ✓ Fonctionne normalement via Plesk |
| Accès FTP | ✓ Fonctionne normalement via Plesk |
| Messagerie Plesk | ✓ Fonctionne normalement via Plesk |
| Statistiques Plesk (Webalizer/AWStats) | ✓ Fonctionne normalement |
| Sauvegardes Plesk | ✓ Fichiers sauvegardés via Plesk (volumes de base sauvegardés séparément par Orbiter) |
| Imunify360 | ✓ Compatible (Orbiter configure correctement l'analyse en temps réel) |
| Pare-feu Plesk | ✓ Compatible |
Dépannage de l'installation
Docker introuvable après l'installation
systemctl start docker
systemctl enable docker
« ERREUR: Ce script doit être exécuté en root »
Le script d'installation requiert les droits root. Utilisez sudo ou passez en root :
sudo bash /opt/psa/admin/plib/modules/orbiter/scripts/install-all.sh
La construction échoue avec « no space left on device » Libérez de l'espace disque. La construction Docker nécessite au moins 10 Go libres. Nettoyez les ressources Docker inutilisées :
docker system prune -af
Imunify360 plante (SIGSEGV) après l'installation sur certains serveurs Corrigé dans Orbiter 1.5.0. L'extension écrit désormais le fichier de configuration Imunify360 au format YAML correct et répare automatiquement les installations existantes endommagées. Mettez à jour vers la dernière version.
Postfix non configuré pour la mise en réseau des conteneurs
L'installeur tente d'ajouter 172.16.0.0/12 au mynetworks de Postfix pour le relais de courrier des conteneurs. Si cette étape a été ignorée, ajoutez-le manuellement :
postconf -e "mynetworks=$(postconf -h mynetworks) 172.16.0.0/12"
systemctl reload postfix