Documents · Auto-hébergé
Un script, des images signées, pas de surprises
Une instance de production ne se construit jamais à partir des sources. Il extrait trois images prédéfinies par version, chacune signée par le pipeline de versions, orchestrée par un script d'opérateur qui vérifie lui-même les signatures.
Le modèle de déploiement
- Une instance est un client. L'isolement est une limite de déploiement ; il n'y a pas de mode multilocataire.
- Téléchargement uniquement : l'image de l'application et du worker, l'image edge avec l'interface intégrée et le service de réception des e-mails, chacune signée avec cosign.
- Les secrets sont générés par instance et requis par le fichier de composition ; rien n'est engagé.
- Tout est orchestré par un seul script opérateur : installation, configuration, mise à niveau, état et mode d'exécution à sec. Il termine chaque exécution avec une liste de contrôle de ce qu'il ne peut pas faire pour vous : enregistrements DNS, paramètres de sauvegarde, étapes de vérification.
Avant de commencer
- Une nouvelle instance Ubuntu 22.04 ou 24.04.
- Un domaine que vous contrôlez ; TLS est automatique via Let's Encrypt dès que les enregistrements DNS imprimés sont résolus.
- Une clé API de modèle, sauf si l'instance exécutera uniquement des modèles locaux.
- 1
Récupérer le script de l'opérateur
Le script installe ses propres outils, notamment cosign pour la vérification de la signature.
curl -fsSL https://raw.githubusercontent.com/Cogeto/cogeto/main/scripts/operator/cogeto -o cogeto chmod +x cogeto - 2
Essai à sec d'abord
Le mode de vérification valide l'environnement et imprime ce que l'installation ferait, sans rien changer.
sudo ./cogeto install --check --domain <votre.domaine> --acme-email <vous> - 3
Installer
Le script extrait les images de version, vérifie leurs signatures, génère des secrets et affiche l'instance.
sudo ./cogeto install --domain <votre.domaine> --acme-email <vous> --mistral-key <key>L'exécution se termine par une liste de contrôle spécifique à l'instance : les enregistrements DNS à créer, les paramètres de sauvegarde à confirmer et les étapes de vérification. TLS s'active dès que les enregistrements DNS sont résolus.
- 4
Vérifiez vous-même une image de version, à tout moment
La signature se fait sans clé via le journal de transparence public, la vérification ne nécessite donc aucune clé de notre part. Chaque version de GitHub contient également la nomenclature logicielle de l'image et la commande de vérification exacte.
cosign verify cogeto/cogeto:<version> \ --certificate-identity-regexp '^https://github.com/Cogeto/cogeto/\.github/workflows/release\.yml@refs/tags/' \ --certificate-oidc-issuer 'https://token.actions.githubusercontent.com'
Mises à niveau et restauration
Téléchargez d'abord de nouveau le script : la copie installée ne peut pas se mettre à jour elle-même, et seul le nouveau script renseigne les identifiants requis par une composition plus récente. Le script refuse les balises non publiées, relance les migrations, vérifie l'état de l'instance et propose une réindexation lorsque le modèle d'embedding a changé. Un retour de version restaure les images ; les migrations restent irréversibles et la restauration complète des données suit la procédure de sauvegarde testée du runbook.
curl -fsSL https://raw.githubusercontent.com/Cogeto/cogeto/main/scripts/operator/cogeto -o cogeto
chmod +x cogeto
sudo ./cogeto upgradeCe que le déploiement n'est pas, délibérément
Pas de Terraform, pas d'automatisation des API cloud, pas de provisionnement en libre-service, pas de mises à jour automatiques : un bon script exécuté par un humain, pour une cohorte où chaque instance compte. Les sauvegardes utilisent les propres capacités du fournisseur d'hébergement et la restauration est répétée et non supposée. Le runbook de l'opérateur couvre le provisionnement, le DNS, l'intégration, les sauvegardes avec une restauration répétée, les mises à niveau et le dépannage, liste de contrôle par liste de contrôle.
Voulez-vous qu'il soit opéré pour vous à la place ?
Une instance hébergée sur l'infrastructure de l'UE commence par la conversation pilote, et non par un formulaire d'inscription.