Docs / Premiers pas / Configuration du serveur

Configuration du serveur

Avant de démarrer sh0, vous n'avez que deux choses à faire : définir le nom d'hôte de votre serveur et pointer votre DNS vers lui. sh0 gère tout le reste.

Commencez avec un serveur propre

sh0 est conçu pour être installé sur un serveur propre. Il gère automatiquement Docker, Caddy et tout le réseau. Utiliser un serveur propre évite les conflits avec les services existants sur les ports 80 et 443.

Note
Vous n'avez pas besoin d'installer Docker ou Caddy manuellement. Lorsque vous exécutez sh0 serve en tant que root, il détecte les dépendances manquantes et les installe pour vous.

Définir le nom d'hôte

Définissez le nom d'hôte de votre serveur pour correspondre au domaine que vous utiliserez pour le tableau de bord sh0. Cela garantit que les certificats SSL et le routage du reverse proxy fonctionnent correctement.

Terminal
# Set the hostname (replace with your actual domain)
sudo hostnamectl set-hostname panel.example.com

Puis mettez à jour /etc/hosts pour que le serveur puisse résoudre son propre nom d'hôte :

/etc/hosts
# Add this line (use your server's public IP)
203.0.113.10    panel.example.com

Vérifiez que le nom d'hôte est défini :

Terminal
hostname -f
# Should output: panel.example.com

Configurer le DNS

Dans votre fournisseur DNS (Cloudflare, Namecheap, Route 53, etc.), créez deux enregistrements A pointant vers l'adresse IP de votre serveur :

TypeNomValeurObjectif
Apanel.example.comL'IP de votre serveurTableau de bord sh0
A (wildcard)*.example.comL'IP de votre serveurLes applications déployées obtiennent des sous-domaines automatiques
DNS wildcard
L'enregistrement wildcard (*.example.com) permet à sh0 d'attribuer automatiquement des sous-domaines comme myapp.example.com à chaque application déployée. Sans lui, vous devrez créer des enregistrements DNS individuels pour chaque application.

Démarrer sh0

Une fois votre nom d'hôte et DNS configurés, démarrez sh0 avec votre domaine :

Terminal
sh0 serve --panel-domain panel.example.com --base-domain example.com

Au premier lancement, sh0 va :

  1. Détecter et installer Docker Engine si absent
  2. Détecter et installer Caddy (reverse proxy) si absent
  3. Initialiser la base de données et générer les clés de chiffrement
  4. Démarrer le tableau de bord sur le port 9000
  5. Provisionner les certificats SSL via Let's Encrypt
Note
La propagation DNS peut prendre quelques minutes. Si le provisionnement SSL échoue à la première tentative, attendez un moment et redémarrez sh0. Caddy réessaiera automatiquement.

Ce que sh0 installe automatiquement

Lorsqu'il est exécuté en tant que root sur Linux, sh0 serve provisionne automatiquement ces dépendances si elles ne sont pas déjà présentes :

DépendanceMéthode d'installationObjectif
Docker Engineget.docker.comRuntime de conteneurs pour les applications déployées
CaddyDépôt APT officiel ou téléchargement du binaireReverse proxy avec SSL automatique

Vous pouvez également exécuter les vérifications de provisionnement sans démarrer le serveur :

Terminal
sh0 setup