Về Field Notes
Series: OpenClaw

Cài đặt và khởi động OpenClaw:
Từ zero đến agent đầu tiên trong 15 phút

OpenClaw là gì?

OpenClaw là nền tảng AI agent self-hosted — bạn tự chạy trên server, toàn quyền kiểm soát dữ liệu, không phụ thuộc cloud vendor. Giao tiếp qua Web UI hoặc API, hỗ trợ multi-provider (Anthropic, OpenAI, Google Gemini), và có hệ sinh thái mở rộng qua Skills, MCP Servers và Plugins.

Điểm khác biệt so với dùng Claude.ai hay ChatGPT trực tiếp: OpenClaw cho phép bạn định nghĩa hành vi agent qua file cấu hình (AGENTS.md, SOUL.md, IDENTITY.md...), xây dựng bộ nhớ dài hạn (Persistent Memory), và chạy autonomous task định kỳ mà không cần can thiệp thủ công.

Series này tập trung vào cách dùng OpenClaw trong thực tế — cấu hình workspace, quản lý memory, tự động hóa với HEARTBEAT.md, mở rộng với MCP và tối ưu chi phí token. Bài này là điểm khởi đầu: cài đặt xong, agent chạy được, rồi mới đi sâu.

Yêu cầu hệ thống

OpenClaw chạy tốt trên VPS phổ thông. Dưới đây là cấu hình tối thiểu và khuyến nghị:

🖥️
CPU
1 vCPU
tối thiểu
🖥️
CPU
2 vCPU
khuyến nghị
💾
RAM
1 GB
tối thiểu
💾
RAM
2 GB
khuyến nghị
💿
Disk
10 GB
SSD, cho data & image
🐳
Docker
v24+
+ Compose v2

Hệ điều hành: Ubuntu 22.04 / 24.04 hoặc Debian 12. Cổng cần mở: 3000 (Web UI) và 11434 nếu dùng Ollama local model.

Cài đặt với Docker Compose

1
Clone repo và tạo thư mục data Tạo workspace cho OpenClaw, tất cả data sẽ được mount vào đây.
2
Tạo file docker-compose.yml Khai báo service chính và volume mount.
3
Tạo file .env với API keys Điền key của provider bạn dùng — Anthropic, OpenAI, hoặc Google.
4
Chạy docker compose up -d Pull image, khởi động container, truy cập Web UI qua port 3000.
docker-compose.yml
services: openclaw: image: ghcr.io/openclaw-ai/openclaw:latest container_name: openclaw restart: unless-stopped ports: - "3000:8080" env_file: - .env volumes: - openclaw-data:/app/backend/data healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8080/health"] interval: 30s retries: 3 volumes: openclaw-data:

Cấu hình API Keys

Tạo file .env cùng thư mục với docker-compose.yml. Chỉ cần điền key của provider bạn thực sự dùng — không nhất thiết phải có cả ba.

.env
# ── Anthropic ────────────────────────────────── ANTHROPIC_API_KEY=sk-ant-api03-xxxxxxxxxxxx # ── OpenAI ───────────────────────────────────── OPENAI_API_KEY=sk-proj-xxxxxxxxxxxx # ── Google Gemini ────────────────────────────── GOOGLE_API_KEY=AIzaSy-xxxxxxxxxxxx # ── App secret (đổi thành chuỗi ngẫu nhiên) ─── WEBUI_SECRET_KEY=change-me-to-random-string # ── Tên hiển thị trên Web UI ─────────────────── WEBUI_NAME=OpenClaw
Anthropic
ANTHROPIC_API_KEY
Claude Haiku / Sonnet / Opus. Khuyến nghị cho hầu hết workflow.
OpenAI
OPENAI_API_KEY
GPT-4o mini / GPT-4o / o1. Tùy chọn thay thế hoặc kết hợp.
Google
GOOGLE_API_KEY
Gemini Flash / Pro. Context window lớn, phù hợp tài liệu dài.
Bảo mật file .env: Không commit file .env lên git. Thêm .env vào .gitignore ngay từ đầu. API key bị lộ = tài khoản bị lợi dụng, chi phí không kiểm soát.

Khởi động lần đầu

Chạy lệnh sau để khởi động:

terminal
# Khởi động (lần đầu sẽ pull image ~500MB) docker compose up -d # Kiểm tra log docker compose logs -f openclaw # Xem status docker compose ps

Sau khoảng 30–60 giây, truy cập http://<server-ip>:3000 trên trình duyệt. Lần đầu tiên sẽ được yêu cầu tạo tài khoản admin — điền email và mật khẩu, tài khoản này được lưu local trên server của bạn.

Gắn domain riêng: Nếu có domain, dùng Nginx reverse proxy để truy cập qua HTTPS thay vì IP:port. Cấu hình Nginx cơ bản: proxy_pass tới localhost:3000 với certbot SSL.

Tạo agent đầu tiên

Vào Workspace → Agents trên Web UI, chọn + New Agent. Điền các trường cơ bản:

agent config (ví dụ)
Name : General Assistant Model : claude-haiku-4-5 # bắt đầu với model nhỏ System : Trợ lý thông minh, trả lời súc tích bằng tiếng Việt. Temperature: 0.7 Memory : enabled # bật persistent memory Tools : web_search, code_exec # chỉ gắn tool cần dùng

Save và bắt đầu chat. Agent đầu tiên không cần phức tạp — mục tiêu bài này là xác nhận hệ thống hoạt động. Chỉnh sửa và mở rộng agent ở các bài tiếp theo trong series.

Kiểm tra hoạt động

Sau khi setup xong, kiểm tra những điểm sau trước khi đi tiếp:

  • Web UI load được tại http://<server-ip>:3000 — không có lỗi 502/504
  • Đăng nhập thành công bằng tài khoản admin đã tạo
  • Tạo agent và gửi tin nhắn thử — nhận được phản hồi từ model
  • Model đúng provider hiện trong header chat (biểu tượng provider)
  • Container đang chạy ổn định: docker compose ps → status Up
  • File .env không có trong git: git status không liệt kê .env

Bước tiếp theo

Setup xong là nền tảng — nhưng chạy được không có nghĩa là dùng hiệu quả. Những bài tiếp theo trong series sẽ đi sâu vào từng phần giúp bạn khai thác OpenClaw đúng cách:

  • Bài 2 — Cấu hình Workspace: AGENTS.md, SOUL.md, IDENTITY.md và các file định nghĩa hành vi agent
  • Bài 3 — Hệ thống trí nhớ 3 tầng: MEMORY.md, Daily Notes và Semantic Search
  • Bài 4 — HEARTBEAT.md: tự động hóa tác vụ định kỳ không cần can thiệp
  • Bài 5 — Skills, MCP Servers & Plugins: mở rộng khả năng agent
  • Bài 6 — Tối ưu token: giảm chi phí mà agent vẫn hoạt động thông minh
Một agent chạy được trong 15 phút — đó là điểm khởi đầu, không phải đích đến. Giá trị thực của OpenClaw nằm ở những lớp cấu hình phía sau. Đọc tiếp bài 2.