การปรับใช้
Neotask สามารถรันได้ทุกที่, จากแล็ปท็อปของคุณไปจนถึง Kubernetes cluster เลือกวิธีการปรับใช้ที่เหมาะกับความต้องการของคุณ
การติดตั้งในเครื่อง
วิธีที่ง่ายที่สุดในการเริ่มต้น ติดตั้ง Neotask โดยตรงบน macOS, Linux หรือ Windows (ผ่าน WSL2) Gateway รันเป็น background service ที่จัดการโดย launchd (macOS) หรือ systemd (Linux)
ความต้องการ: Node.js 22+
สิ่งที่คุณได้รับ:
- Gateway รันเป็น background service
- การเริ่มต้นอัตโนมัติเมื่อเปิดเครื่อง
- macOS companion app (บน macOS)
- เครื่องมือ CLI ทั้งหมด
Docker
รัน Gateway ใน Docker container พร้อม volume ที่มี config และ workspace ถาวร เหมาะสำหรับการปรับใช้บน VPS หรือเมื่อคุณต้องการการแยกตัวจากระบบ host
ฟีเจอร์:
- Image สำเร็จรูปบน Node 22 (Debian)
- Chromium + Xvfb ที่ไม่บังคับสำหรับการทำงานอัตโนมัติของเบราว์เซอร์ (เพิ่ม ~300MB)
- การตั้งค่า Docker Compose พร้อม volume ถาวร
- Health check endpoint ที่
/health - รันในฐานะผู้ใช้
nodeที่ไม่ใช่ root - การรองรับ agent sandbox (Docker-in-Docker สำหรับการรันแบบแยกตัว)
State ถาวร:
- Configuration:
~/.neotask/neotask.json - Workspace:
~/.neotask/workspace/ - Sessions:
~/.neotask/agents/*/sessions/ - Channel state:
~/.neotask/whatsapp/, เป็นต้น
Kubernetes
ปรับใช้กับ Kubernetes โดยใช้รูปแบบ StatefulSet สำหรับที่เก็บข้อมูลถาวร มี Helm chart ที่ชุมชนดูแลรักษา
การตั้งค่าทั่วไป:
- StatefulSet สำหรับ Gateway (เซสชันถาวรและ config)
- ConfigMap สำหรับ configuration
neotask.json - Secret สำหรับ token และ API key
- PersistentVolumeClaim สำหรับข้อมูลเซสชันและ workspace
- Service (ClusterIP หรือ LoadBalancer) สำหรับการเข้าถึง WebSocket
Fly.io
การปรับใช้ด้วยคำสั่งเดียวไปยัง Fly.io พร้อม volume ถาวรและ HTTPS อัตโนมัติ
ฟีเจอร์:
- x86 VM พร้อม RAM ที่กำหนดค่าได้ (ค่าเริ่มต้น 2048MB)
- Volume
/dataถาวรสำหรับ config และเซสชัน - การยุติ TLS อัตโนมัติ
- การเข้าถึง SSH สำหรับการกำหนดค่า
- การรองรับ webhook ผ่าน ngrok (ที่ไม่บังคับ)
Hetzner VPS
รันบน Hetzner VPS เฉพาะด้วย Docker Compose มีการรองรับ infrastructure-as-code เต็มรูปแบบพร้อม Terraform module ของชุมชน
การตั้งค่าประกอบด้วย:
- การกำหนดค่า Docker Compose
- ไดเรกทอรีถาวรสำหรับ config, workspace และ channel state
- Dockerfile กำหนดเองสำหรับ baking ไบนารีที่ต้องการ
- ไฟร์วอลล์และการเสริมความปลอดภัย
Render
การปรับใช้แบบ blueprint บน Render พร้อม build อัตโนมัติและดิสก์ถาวร 1GB
GCP Compute Engine
การปรับใช้บน Docker บน Google Cloud พร้อมดิสก์ถาวรและการทำงานอัตโนมัติเมื่อเริ่มต้น
Podman
การรัน container แบบ rootless ด้วย Podman และการรองรับ systemd Quadlet เหมาะสำหรับสภาพแวดล้อมที่การเข้าถึง Docker daemon ถูกจำกัด
การเลือกการปรับใช้
| ความต้องการ | ที่แนะนำ |
|---|---|
| แค่ลองใช้ | การติดตั้งในเครื่อง |
| การใช้งานส่วนตัวบน Mac | Local + macOS companion app |
| Server ที่ทำงานตลอดเวลา | Docker บน VPS (Hetzner, DigitalOcean) |
| Production ที่ scale ได้ | Kubernetes |
| การปรับใช้คลาวด์รวดเร็ว | Fly.io หรือ Render |
| Container แบบ rootless | Podman |
การเข้าถึงระยะไกล
โดยค่าเริ่มต้น Gateway จะรับฟังเฉพาะบน localhost (127.0.0.1) สำหรับการเข้าถึงระยะไกล:
- Tailscale, VPN mesh network พร้อม DNS อัตโนมัติ Gateway สามารถ bind กับ Tailnet ของคุณเพื่อการเข้าถึงที่ปลอดภัยจากทุกที่ Tailscale Serve สามารถเปิดเผยแดชบอร์ดด้วย HTTPS
- SSH Tunnel, ส่งต่อพอร์ต Gateway ผ่าน SSH เพื่อการเข้าถึงระยะไกลที่ปลอดภัยโดยไม่ต้องเปิดเผยพอร์ต
- LAN Bind, Bind กับเครือข่ายท้องถิ่นของคุณเพื่อการเข้าถึงจากอุปกรณ์อื่นในเครือข่ายเดียวกัน การค้นพบอัตโนมัติผ่าน Bonjour/mDNS
ดูที่ Gateway สำหรับรายละเอียดการกำหนดค่า