Passer au contenu principal

Auto-hébergeur – Pour commencer

Ce guide vous fait passer d'un serveur vide à un Kanera en cours d'exécution auquel vous pouvez vous connecter.

Il couvre les éléments dont chaque déploiement a besoin : les exigences, la capacité, le fichier d'environnement, le démarrage de la pile et la confirmation de son fonctionnement. Les éléments facultatifs (API publique, MCP, courrier électronique, stockage et sauvegardes) ont chacun leur propre page, liée à la fin.

Exigences​

Il vous faut :

  • Un serveur avec Docker et Docker Compose.
  • Un domaine pointant vers le serveur.
  • HTTPS devant Kanera, généralement via Caddy, Traefik, nginx ou un équilibreur de charge cloud.
  • Informations d'identification SMTP si vous souhaitez que Kanera envoie un e-mail.
  • Un plan de sauvegarde des données PostgreSQL et des fichiers téléchargés.

Capacité de planification​

Kanera est léger à l’échelle d’une petite équipe. Son fichier de composition ne définit pas de limites strictes en matière de CPU ou de mémoire, et le service de migration se ferme après le démarrage. La pile par défaut exécute PostgreSQL, Valkey, deux réplicas d'API, un travailleur, l'API publique, MCP et nginx.

Utilisez-les comme points de départ, puis mesurez votre propre activité simultanée, vos fichiers, vos intégrations et votre fenêtre de sauvegarde :

Équipe typiqueCapacité de démarrageDisque localNotes
Personnel ou peu utilisé1 processeur virtuel, 1 Go de RAM10 GioUtiliser API_REPLICAS=1 et laissez le profil de surveillance facultatif désactivé.
1 à 25 utilisateurs actifs1 à 2 processeurs virtuels, 2 Gio de RAM20 GioConfortable pour l'activité normale du tableau, les notifications et les intégrations légères.
26 à 100 utilisateurs actifs2 à 4 processeurs virtuels, 4 Gio de RAM40 GioAjoute une marge pour les activités simultanées, les téléchargements, le trafic API, les webhooks et le cache de base de données.
Plus de 100 utilisateurs actifs4+ processeurs virtuels, 8+ Go de RAM80+ GioEffectuez un test de charge avec des données représentatives avant le lancement, puis mettez à l'échelle les réplicas d'API et ajustez PostgreSQL à partir de l'utilisation observée.

Il s’agit de références de planification, et non de limites strictes d’utilisateurs ou de garanties de capacité mesurées. L’activité simultanée compte plus que le nombre de comptes enregistrés. Le volume et la conservation des fichiers déterminent généralement davantage les besoins en disque que Kanera lui-même. Conservez les sauvegardes de base de données et de fichiers téléchargés en dehors du disque principal du serveur et alertez en cas de croissance du disque.

Le profil facultatif de surveillance Prometheus, Grafana, Loki, Alloy et exportateur ajoute plusieurs processus. Le guide de déploiement estime environ 0,7 à 1,5 Gio de mémoire supplémentaire, en fonction du volume de journaux et de l'utilisation du tableau de bord. Budgétisez cela séparément ou exécutez la surveillance sur un autre hôte.

Pour savoir ce que fait chaque service et lesquels exposer, voir Services et routage.

Télécharger Kanera​

Kanera est livré sous forme d'images Docker prédéfinies. Chacun libération comprend un prêt à l'emploi docker-compose.yml cela les extrait, vous n'avez donc pas besoin de cloner le référentiel ou de créer quoi que ce soit.

Sur le serveur, créez un répertoire pour Kanera et téléchargez le fichier de composition et l'exemple de fichier d'environnement à partir de la dernière version :

mkdir kanera && cd kanera
curl -fsSLo docker-compose.yml https://github.com/happendev/Kanera/releases/latest/download/docker-compose.yml
curl -fsSLo .env https://github.com/happendev/Kanera/releases/latest/download/env.example

Le fichier de composition épingle chaque image à cette version, donc rien ne change jusqu'à ce que vous mettre à jour. Il nécessite Docker Compose 2.23 ou une version plus récente (docker compose version).

Configurer le fichier d'environnement​

Ouvert .env et remplacez chaque espace réservé. Définissez les valeurs de production requises :

WEB_ORIGIN=https://kanera.example.com
COOKIE_DOMAIN=kanera.example.com
COOKIE_SECURE=true
KANERA_ENVIRONMENT=production

POSTGRES_PASSWORD=<openssl rand -hex 32>
JWT_SECRET=<openssl rand -hex 32>
MCP_INTERNAL_SECRET=<openssl rand -hex 32>
MFA_ENCRYPTION_KEY=<openssl rand -hex 32>
MEDIA_SIGNING_SECRET=<openssl rand -hex 32>
SECRETS_ENCRYPTION_KEY=<openssl rand -hex 32>

Gardez ces secrets stables lors des redéploiements. Changer JWT_SECRET déconnecte les utilisateurs. Changer MFA_ENCRYPTION_KEY invalide les authentificateurs inscrits et les défis MFA. Changement MEDIA_SIGNING_SECRET invalide les URL de médias signés existants. MCP_INTERNAL_SECRET authentifie le service MCP auprès de l'API. SECRETS_ENCRYPTION_KEY protège les secrets d'intégration stockés et doit être distinct de JWT_SECRET.

Le mode auto-hébergé est le mode par défaut :

KANERA_DEPLOYMENT_MODE=self_hosted

Ne définissez pas de variables de facturation Stripe hébergées, sauf si vous exécutez un déploiement hébergé de style Kanera SaaS.

Voir Référence Environnement pour les paramètres de production et env.full.example pour chaque valeur de réglage facultative et par défaut.

Démarrer Kanera​

docker compose up -d

Docker extrait les images, puis le service de migration configure la base de données une fois auparavant api, worker, et public-api commencer. Le service MCP démarre une fois la vérification de l'état de l'API publique réussie.

Vérifier le déploiement​

Ouvrez votre domaine Web dans un navigateur :

https://kanera.example.com

Un tableau Kanera dans l'application web après déploiement.

Vérifications utiles :

docker compose ps
docker compose logs -f api
docker compose logs -f worker
docker compose logs -f public-api
docker compose logs -f mcp

Bilans de santé :

curl https://kanera.example.com/api/health
curl https://api.kanera.example.com/health
curl https://mcp.kanera.example.com/health

Les vérifications publiques de l'API et du MCP ne s'appliquent que si ces services sont exposés.

Si quelque chose ne se produit pas, travaillez Problèmes courants par ordre plutôt que par symptôme.

Configurez ce dont vous avez besoin​

Rien ci-dessous n’est requis pour vous connecter et utiliser les tableaux. Ajoutez chaque pièce quand vous le souhaitez :

PagesCouvertures
Référence EnvironnementSecrets requis, URL publiques, politique d'accès, stockage, livraison, mise à l'échelle, conservation, surveillance et paramètres d'administration.
Services et routageCe que fait chaque service, domaines recommandés, ports de publication et approbation du proxy inverse.
E-mail et notificationsSMTP, push du navigateur, destinations personnelles ntfy/Gotify/webhook et destinations de discussion.
Intégrations et APIExposition de l'API publique et du MCP, d'OAuth pour les agents AI et de la copie des pièces jointes Trello.
Stockage et sauvegardesStockage de téléchargement local ou S3, sauvegardes de bases de données et de fichiers, ainsi que les secrets à conserver.
Mises à jour et mise à l'échelleMise à jour vers une nouvelle version et nombre de réplicas.

Pour la référence sur le déploiement basé sur l'implémentation, voir DEPLOY.md dans le référentiel Kanera.