Ngược mã hóa API MicroVM chưa được công bố của Docker Sandbox: Bước tiến mới trong cách ly an toàn
Docker đã âm thầm tích hợp một API MicroVM chưa có tài liệu hướng dẫn để chạy các tác vụ không đáng tin cậy một cách an toàn. Rivet.dev đã thực hiện kỹ thuật ngược mã hóa (reverse-engineering) API này và xây dựng Sandbox Agent SDK mã nguồn mở, giúp các nhà phát triển dễ dàng điều phối các tác nhân AI (AI agents) trong môi trường cách ly cao.

Docker đã âm thầm tích hợp một API MicroVM chưa có tài liệu hướng dẫn để chạy các tác vụ không đáng tin cậy một cách an toàn. Rivet.dev đã thực hiện kỹ thuật ngược mã hóa (reverse-engineering) API này và xây dựng Sandbox Agent SDK mã nguồn mở, giúp các nhà phát triển dễ dàng điều phối các tác nhân AI (AI agents) trong môi trường cách ly cao.
Trong nhiều năm qua, Docker và container đã trở thành tiêu chuẩn để chạy các ứng dụng backend. Tuy nhiên, với sự bùng nổ của các tác nhân AI (AI agents) và nhu cầu thực thi mã không đáng tin cậy (untrusted code), container truyền thống đang bộc lộ những hạn chế về bảo mật. Docker Sandbox ra đời như một giải pháp thay thế, sử dụng công nghệ MicroVM thay vì container thông thường để đảm bảo an toàn tuyệt đối.
So sánh kiến trúc MicroVM và Container
Docker Sandbox và sự ra đời của MicroVM
Docker Sandbox được thiết kế đặc biệt để chạy các tác nhân AI như Claude Code, Codex hay Gemini một cách an toàn. Các tác nhân này cần quyền truy cập để chạy mã tùy ý, cài đặt gói phần mềm và sửa đổi tệp tin. Nếu chạy trên container thông thường, việc này có thể gây rủi ro bảo mật nghiêm trọng cho hệ thống máy chủ.
Dưới đây là sự khác biệt cốt lõi giữa Docker Container truyền thống và Docker Sandbox:
- Bảo mật: Container chia sẻ hạt nhân (kernel) với máy chủ, trong khi Sandbox sử dụng MicroVM với kernel riêng biệt hoàn toàn.
- Mã không đáng tin cậy: Container không an toàn cho các mã nguồn lạ, nhưng Sandbox được thiết kế để xử lý việc này.
- Mạng: Container truy cập trực tiếp qua HTTP, Sandbox đi qua một bộ lọc proxy.
- Nền tảng: Container chạy trên mọi hệ điều hành, hiện tại Sandbox chỉ hỗ trợ macOS và Windows (yêu cầu ảo hóa lồng nhau).
Tại sao MicroVM lại quan trọng?
Một hiểu lầm phổ biến là container đủ an toàn để cách ly mã độc. Do thiết kế chia sẻ kernel để tối ưu hóa hiệu suất, một container bị xâm phạm có thể đe dọa đến toàn bộ hệ thống máy chủ. Ngành công nghệ phần mềm hiện nay đồng ý rằng container không phải là lựa chọn tốt cho việc thực thi mã không đáng tin cậy.
Các dịch vụ như AWS Lambda hay Fly.io đã sử dụng MicroVM từ lâu vì đây được coi là "tiêu chuẩn vàng" trong việc cách ly mã người dùng. MicroVM nhẹ hơn máy ảo đầy đủ nhưng mang lại mức độ bảo mật cao hơn nhiều so với container thông thường.
Giao diện dòng lệnh Docker Sandbox
Ngược mã hóa API ẩn của Docker
Lệnh docker sandbox run hiện tại bị giới hạn chỉ cho phép chạy một số tác nhân được Docker cho phép (Claude, Codex, Gemini, v.v.). Để chạy bất kỳ mã nào trong Sandbox, đội ngũ của Rivet.dev đã đi sâu vào hệ thống để tìm hiểu cơ chế hoạt động bên dưới.
Họ phát hiện ra rằng Docker sử dụng một daemon tên là sandboxd lắng nghe tại socket ~/.docker/sandboxes/sandboxd.sock. Daemon này cung cấp ba endpoint HTTP chính để quản lý máy ảo:
GET /vm: Liệt kê tất cả các VM đang chạy.POST /vm: Tạo một VM mới.DELETE /vm/{vm_name}: Hủy bỏ một VM.
Bằng cách gửi yêu cầu POST đến endpoint này, người dùng có thể tạo một MicroVM mới với cấu hình tùy chỉnh. Mỗi VM được tạo ra sẽ sở hữu một Docker daemon riêng biệt nằm tại đường dẫn socket cụ thể, đảm bảo sự cách ly tuyệt đối giữa các VM và với máy chủ.
Sandbox Agent SDK: Đơn giản hóa việc quản lý
Mặc dù API gốc của MicroVM rất mạnh mẽ, nhưng việc xây dựng hệ thống điều phối tác nhân dựa trên nó khá phức tạp. Nó đòi hỏi xử lý vòng đời của phiên làm việc, tải hình ảnh (image), quản lý luồng dữ liệu và xử lý các yêu cầu cấp phép.
Để giải quyết vấn đề này, Rivet.dev đã xây dựng Sandbox Agent SDK. SDK này bao bọc API MicroVM phức tạp và cung cấp một giao diện đơn giản để tạo và tương tác với các tác nhân AI.
Ví dụ, với TypeScript, bạn có thể dễ dàng kết nối, tạo phiên và gửi tin nhắn đến tác nhân chỉ với vài dòng mã. SDK hỗ trợ đa tác nhân, cho phép chạy Claude, Codex hoặc OpenCode thông qua một giao diện thống nhất.
Kết luận
API MicroVM của Docker mở ra cơ hội lớn cho việc cách ly an toàn không chỉ cho các tác nhân AI chính thức mà còn cho bất kỳ khối lượng công việc nào. Cho dù bạn đang xây dựng trợ lý lập trình AI, chạy mã người dùng hay cách lý các plugin đa khách hàng (multi-tenant), API /vm cung cấp các nguyên thủy cần thiết để thực hiện điều đó một cách an toàn.
Tuy nhiên, cần lưu ý rằng API này hiện chưa được tài liệu hóa và có thể thay đổi trong tương lai. Tính năng này yêu cầu Docker Desktop 4.58 trở lên trên macOS hoặc Windows. Hiện tại, Linux chưa được hỗ trợ do Docker Desktop sử dụng các công nghệ ảo hóa riêng biệt của từng nền tảng.
Bài viết liên quan

Công nghệ
Cerebras, đối tác thân thiết của OpenAI, sẵn sàng cho đợt IPO kỷ lục định giá tới 26,6 tỷ USD
04 tháng 5, 2026

AI & ML
Nguy cơ bảo mật từ "Vibe-Coding": Hàng nghìn ứng dụng AI để lộ dữ liệu nhạy cảm trên mạng
07 tháng 5, 2026

AI & ML
NanoClaw từ chối lời mua lại 20 triệu USD, huy động thành công 12 triệu USD vốn hạt giống
20 tháng 5, 2026
