Skip to main content

OpenClaw trên Hetzner (Docker, Hướng dẫn VPS production)

Mục tiêu

Chạy một OpenClaw Gateway bền vững trên VPS Hetzner bằng Docker, với trạng thái được lưu lâu dài, các binary được đóng gói sẵn và hành vi khởi động lại an toàn. If you want “OpenClaw 24/7 for ~$5”, this is the simplest reliable setup. Hetzner pricing changes; pick the smallest Debian/Ubuntu VPS and scale up if you hit OOMs.

Chúng ta đang làm gì (nói đơn giản)?

  • Thuê một máy chủ Linux nhỏ (VPS Hetzner)
  • Cài Docker (môi trường chạy ứng dụng tách biệt)
  • Khởi động OpenClaw Gateway trong Docker
  • Lưu ~/.openclaw + ~/.openclaw/workspace trên máy chủ (tồn tại qua các lần restart/rebuild)
  • Truy cập Control UI từ laptop của bạn qua đường hầm SSH
Gateway có thể được truy cập qua:
  • Chuyển tiếp cổng SSH từ laptop của bạn
  • Mở cổng trực tiếp nếu bạn tự quản lý firewall và token
This guide assumes Ubuntu or Debian on Hetzner.
If you are on another Linux VPS, map packages accordingly. For the generic Docker flow, see Docker.

Lộ trình nhanh (người vận hành có kinh nghiệm)

  1. Tạo VPS Hetzner
  2. Cài Docker
  3. Clone repository OpenClaw
  4. Tạo các thư mục host lưu trữ lâu dài
  5. Cấu hình .envdocker-compose.yml
  6. Đóng gói các binary cần thiết vào image
  7. docker compose up -d
  8. Xác minh tính bền vững và truy cập Gateway

Những gì bạn cần

  • VPS Hetzner với quyền root
  • Truy cập SSH từ laptop của bạn
  • Thoải mái cơ bản với SSH + copy/paste
  • ~20 phút
  • Docker và Docker Compose
  • Thông tin xác thực mô hình
  • Thông tin xác thực nhà cung cấp (tùy chọn)
    • WhatsApp QR
    • Telegram bot token
    • Gmail OAuth

1. Tạo VPS

Tạo một VPS Ubuntu hoặc Debian trên Hetzner. Kết nối với quyền root:
This guide assumes the VPS is stateful. Đừng coi đây là hạ tầng dùng rồi bỏ.

2. Cài Docker (trên VPS)

Xác minh:

3. Clone repository OpenClaw

Hướng dẫn này giả định bạn sẽ build một image tùy chỉnh để đảm bảo binary được lưu bền vững.

4. Tạo các thư mục host lưu trữ lâu dài

Docker containers are ephemeral. All long-lived state must live on the host.

5. Cấu hình biến môi trường

Tạo .env ở thư mục gốc của repository.
Tạo các secret mạnh:
Không commit file này.

6. Cấu hình Docker Compose

Tạo hoặc cập nhật docker-compose.yml.
--allow-unconfigured is only for bootstrap convenience, it is not a replacement for a proper gateway configuration. Still set auth (gateway.auth.token or password) and use safe bind settings for your deployment.

7. Đóng gói các binary cần thiết vào image (quan trọng)

Installing binaries inside a running container is a trap. Anything installed at runtime will be lost on restart. Tất cả các binary bên ngoài mà Skills cần phải được cài ở bước build image. Ví dụ dưới đây chỉ minh họa ba binary phổ biến:
  • gog cho truy cập Gmail
  • goplaces cho Google Places
  • wacli cho WhatsApp
These are examples, not a complete list. You may install as many binaries as needed using the same pattern. Nếu sau này bạn thêm Skills mới phụ thuộc vào các binary khác, bạn phải:
  1. Cập nhật Dockerfile
  2. Rebuild image
  3. Restart container
Ví dụ Dockerfile

8. Build và khởi chạy

Xác minh các binary:
Đầu ra mong đợi:

9. Xác minh Gateway

Thành công:
Từ laptop của bạn:
Mở: http://127.0.0.1:18789/ Dán gateway token của bạn.

Những gì được lưu ở đâu (nguồn sự thật)

OpenClaw runs in Docker, but Docker is not the source of truth. All long-lived state must survive restarts, rebuilds, and reboots.

Hạ tầng dưới dạng mã (Terraform)

Đối với các nhóm ưu tiên quy trình hạ tầng dưới dạng mã, một cấu hình Terraform do cộng đồng duy trì cung cấp:
  • Cấu hình Terraform dạng module với quản lý remote state
  • Tự động cấp phát thông qua cloud-init
  • Các script triển khai (bootstrap, deploy, backup/restore)
  • Tăng cường bảo mật (tường lửa, UFW, chỉ cho phép truy cập SSH)
  • Cấu hình SSH tunnel để truy cập gateway
Kho lưu trữ: Cách tiếp cận này bổ sung cho thiết lập Docker ở trên bằng các triển khai có thể tái tạo, hạ tầng được quản lý bằng version control và khôi phục sau thảm họa tự động.
Lưu ý: Do cộng đồng duy trì. Đối với sự cố hoặc đóng góp, xem các liên kết repository ở trên.