# Deployment Neotask può essere eseguito ovunque, dal tuo laptop a un cluster Kubernetes. Scegli il metodo di deployment più adatto alle tue esigenze. ## Installazione Locale Il modo più semplice per iniziare. Installa Neotask direttamente su macOS, Linux o Windows (tramite WSL2). Il Gateway viene eseguito come servizio in background gestito da launchd (macOS) o systemd (Linux). **Requisiti:** Node.js 22+ **Cosa ottieni:** - Gateway in esecuzione come servizio in background - Avvio automatico al boot - App companion macOS (su macOS) - Tutti gli strumenti CLI ## Docker Esegui il Gateway in un container Docker con volumi persistenti per la configurazione e il workspace. Ideale per deployment su VPS o quando vuoi isolamento dall'host. **Funzionalità:** - Immagini pre-built basate su Node 22 (Debian) - Chromium + Xvfb opzionali per l'automazione del browser (aggiunge ~300MB) - Configurazione Docker Compose con volumi persistenti - Endpoint di health check su `/health` - Esecuzione come utente non-root `node` - Supporto sandbox per agenti (Docker-in-Docker per esecuzione isolata) **Stato Persistente:** - Configurazione: `~/.neotask/neotask.json` - Workspace: `~/.neotask/workspace/` - Sessioni: `~/.neotask/agents/*/sessions/` - Stato canali: `~/.neotask/whatsapp/`, ecc. ## Kubernetes Esegui su Kubernetes usando il pattern StatefulSet per archiviazione persistente. Sono disponibili Helm chart mantenuti dalla community. **Configurazione tipica:** - **StatefulSet** per il Gateway (sessioni e configurazione persistenti) - **ConfigMap** per la configurazione `neotask.json` - **Secret** per token e chiavi API - **PersistentVolumeClaim** per dati di sessione e workspace - **Service** (ClusterIP o LoadBalancer) per l'accesso WebSocket ## Fly.io Deployment con un solo comando su Fly.io con volumi persistenti e HTTPS automatico. **Funzionalità:** - VM x86 con RAM configurabile (default 2048MB) - Volume `/data` persistente per configurazione e sessioni - Terminazione TLS automatica - Accesso SSH per la configurazione - Supporto webhook tramite ngrok (opzionale) ## Hetzner VPS Esegui su un VPS Hetzner dedicato con Docker Compose. Supporto completo infrastructure-as-code con moduli Terraform della community. **La configurazione include:** - Configurazione Docker Compose - Directory persistenti per configurazione, workspace e stato dei canali - Dockerfile personalizzato per includere i binari necessari - Hardening firewall e sicurezza ## Render Deployment basato su Blueprint su Render con build automatiche e 1GB di disco persistente. ## GCP Compute Engine Deployment basato su Docker su Google Cloud con disco persistente e automazione all'avvio. ## Podman Esecuzione di container rootless con supporto Podman e systemd Quadlet. Ideale per ambienti in cui l'accesso al daemon Docker è limitato. ## Scegliere un Deployment | Esigenza | Consigliato | |------|-------------| | Solo una prova | Installazione locale | | Uso personale sul Mac | Locale + app companion macOS | | Server sempre attivo | Docker su VPS (Hetzner, DigitalOcean) | | Produzione con scaling | Kubernetes | | Deploy cloud rapido | Fly.io o Render | | Container rootless | Podman | ## Accesso Remoto Per default, il Gateway ascolta solo su localhost (127.0.0.1). Per l'accesso remoto: - **Tailscale**, Rete VPN mesh con DNS automatico. Il Gateway può essere legato al tuo Tailnet per un accesso sicuro da qualsiasi luogo. Tailscale Serve può esporre la dashboard con HTTPS. - **SSH Tunnel**, Inoltra la porta del Gateway tramite SSH per un accesso remoto sicuro senza esporre porte. - **LAN Bind**, Lega alla tua rete locale per l'accesso da altri dispositivi sulla stessa rete. Scoperta automatica tramite Bonjour/mDNS. Vedi [Gateway](gateway.md) per i dettagli di configurazione.