Ecbot Docs
Bắt đầu

Cài đặt

Chạy Ecbot trên máy hoặc máy chủ của bạn. Cài công cụ, điền tệp env bằng một lệnh, khởi động dịch vụ Docker và chạy các ứng dụng.

Ecbot là mã nguồn mở, nên bạn có thể tự chạy toàn bộ hệ thống: API, ứng dụng web và dịch vụ AI, cùng Postgres, Redis và trình giả lập Cloud Tasks chạy trong Docker. Một lệnh thiết lập điền sẵn cấu hình, nên chỉ mất khoảng 15 phút để chạy được. Nếu chỉ muốn dùng Ecbot, hãy thiết lập cho shop trên bản chạy sẵn.

Yêu cầu

  • Node.js 22 và pnpm 9 (corepack enable).
  • Docker kèm Docker Compose.
  • Python 3.12 trở lên và uv, cho dịch vụ AI.
  • Khóa API của OpenRouter.

Tải mã nguồn và cài đặt

git clone https://github.com/blackmouse572/ecbot.git
cd ecbot
pnpm install

Tạo các tệp env

pnpm setup:local

Lệnh này tạo tệp .env cho API, ứng dụng web và dịch vụ AI từ các tệp .env.example. Nó tự sinh khóa JWT, các bí mật nội bộ và các cặp khóa API khớp nhau, và chỉ hỏi những giá trị bạn phải tự cung cấp, như khóa OpenRouter. Lệnh không bao giờ ghi đè giá trị bạn đã đặt, nên chạy lại nhiều lần vẫn an toàn. Dùng pnpm setup:local --check để xem còn thiếu gì. Xem trang Cấu hình để biết mọi biến.

Khởi động các dịch vụ

docker compose up -d

Lệnh này khởi động Postgres có pgvector (5432), Redis (6379), máy chủ JWKS (3011), Bull board (3010) và trình giả lập Cloud Tasks (8123).

Tạo cơ sở dữ liệu

pnpm db:migrate:up
pnpm db:seed

Chạy các ứng dụng

pnpm dev:app                     # API ở :8080 và ứng dụng web ở :5173
cd apps/ai && uv sync && pnpm dev   # dịch vụ AI ở :8000

Mở http://localhost:5173 và đăng nhập bằng một tài khoản mẫu.

Tác vụ chạy nền

Xử lý cơ sở kiến thức, gửi email và nhắc hẹn chạy bằng Cloud Tasks. Để chạy trên máy, hãy bỏ dấu chú thích dòng CLOUD_TASKS_EMULATOR_HOST=localhost:8123 trong apps/api/.env. Trình giả lập chạy trong Docker và gọi ngược về API qua API_BACKEND_URL, nên địa chỉ này phải truy cập được từ bên trong container (trên Linux, hãy dùng địa chỉ Docker bridge thay vì localhost).

Chạy tất cả trong Docker

Tệp compose còn có các profile chạy ứng dụng trong container: docker compose --profile app up -d thêm API và ứng dụng web, còn --profile full thêm cả dịch vụ AI.

Câu hỏi thường gặp

Trong trang này