# Déploiement Neotask peut s'exécuter n'importe où, de votre ordinateur portable à un cluster Kubernetes. Choisissez la méthode de déploiement qui correspond à vos besoins. ## Installation locale La façon la plus simple de démarrer. Installez Neotask directement sur macOS, Linux ou Windows (via WSL2). Le Gateway s'exécute en tant que service en arrière-plan géré par launchd (macOS) ou systemd (Linux). **Exigences :** Node.js 22+ **Ce que vous obtenez :** - Gateway fonctionnant en tant que service en arrière-plan - Démarrage automatique au démarrage - Application compagnon macOS (sur macOS) - Tous les outils CLI ## Docker Exécutez le Gateway dans un conteneur Docker avec des volumes de configuration et d'espace de travail persistants. Idéal pour les déploiements VPS ou lorsque vous souhaitez une isolation de votre système hôte. **Fonctionnalités :** - Images préconstruites basées sur Node 22 (Debian) - Chromium + Xvfb optionnel pour l'automatisation du navigateur (ajoute ~300 Mo) - Configuration Docker Compose avec volumes persistants - Point de terminaison de vérification de santé sur `/health` - S'exécute en tant qu'utilisateur non-root `node` - Prise en charge des bacs à sable d'agents (Docker-in-Docker pour une exécution isolée) **État persistant :** - Configuration : `~/.neotask/neotask.json` - Espace de travail : `~/.neotask/workspace/` - Sessions : `~/.neotask/agents/*/sessions/` - État des canaux : `~/.neotask/whatsapp/`, etc. ## Kubernetes Déployez sur Kubernetes en utilisant le modèle StatefulSet pour le stockage persistant. Des charts Helm maintenus par la communauté sont disponibles. **Configuration typique :** - **StatefulSet** pour le Gateway (sessions et configuration persistantes) - **ConfigMap** pour la configuration `neotask.json` - **Secret** pour les jetons et clés API - **PersistentVolumeClaim** pour les données de session et l'espace de travail - **Service** (ClusterIP ou LoadBalancer) pour l'accès WebSocket ## Fly.io Déploiement en une commande sur Fly.io avec volumes persistants et HTTPS automatique. **Fonctionnalités :** - VM x86 avec RAM configurable (2048 Mo par défaut) - Volume `/data` persistant pour la configuration et les sessions - Terminaison TLS automatique - Accès SSH pour la configuration - Prise en charge des webhooks via ngrok (optionnel) ## Hetzner VPS Exécutez sur un VPS Hetzner dédié avec Docker Compose. Prise en charge complète de l'infrastructure en tant que code avec des modules Terraform communautaires. **La configuration comprend :** - Configuration Docker Compose - Répertoires persistants pour la configuration, l'espace de travail et l'état des canaux - Dockerfile personnalisé pour intégrer les binaires requis - Renforcement du pare-feu et de la sécurité ## Render Déploiement basé sur un plan directeur sur Render avec des builds automatiques et un disque persistant de 1 Go. ## GCP Compute Engine Déploiement basé sur Docker sur Google Cloud avec disque persistant et automatisation du démarrage. ## Podman Exécution de conteneurs sans root avec Podman et prise en charge de Podman Quadlet systemd. Idéal pour les environnements où l'accès au démon Docker est restreint. ## Choisir un déploiement | Besoin | Recommandé | |--------|------------| | Juste pour essayer | Installation locale | | Usage personnel sur votre Mac | Local + application compagnon macOS | | Serveur toujours actif | Docker sur VPS (Hetzner, DigitalOcean) | | Production avec mise à l'échelle | Kubernetes | | Déploiement cloud rapide | Fly.io ou Render | | Conteneurs sans root | Podman | ## Accès distant Par défaut, le Gateway écoute uniquement sur localhost (127.0.0.1). Pour l'accès distant : - **Tailscale**, Réseau maillé VPN avec DNS automatique. Le Gateway peut se lier à votre Tailnet pour un accès sécurisé depuis n'importe où. Tailscale Serve peut exposer le tableau de bord avec HTTPS. - **Tunnel SSH**, Transférez le port du Gateway via SSH pour un accès distant sécurisé sans exposer les ports. - **Liaison LAN**, Liez à votre réseau local pour l'accès depuis d'autres appareils sur le même réseau. Découverte automatique via Bonjour/mDNS. Voir [Gateway](gateway.md) pour les détails de configuration.