[Feature Request] Replace E2B with local Docker sandbox for self-hosted deployments

Đang mở
#4,965 2 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
35/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
docker, kubernetes, nodejs, python, typescript

Hướng nghiên cứu

The issue names no implementation files or tests; begin with the Function block and self-hosting Kubernetes documentation linked in References, then locate the current E2B execution entry point. Done means self-hosted deployments can execute imported JavaScript and Python in a local isolated sandbox without E2B, with the relevant behavior covered by tests.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

feature

Problem

In self-hosted Kubernetes deployments, the Function block shows:

"JavaScript code with import statements requires E2B to be enabled.
Please remove the import statements, or contact your administrator to enable E2B"

E2B is an external third-party cloud service. Self-hosted users should not
be forced to depend on an external paid service for basic code execution.

Feature Request

Add a local sandbox execution option for self-hosted instances — for example:

  • Spin up an isolated Docker/Kubernetes Job to execute the Function block code
  • Use Node.js child_process with --experimental-vm-modules for JS imports
  • Use a restricted Python container for Python execution

This would allow self-hosted users to use JavaScript imports and Python
in Function blocks without needing an E2B account or external dependency.

Why This Matters

  • Self-hosted users want full data privacy — no code leaving the cluster
  • E2B is a paid external service — adds cost and external dependency
  • Simple use cases (import lodash, import axios) don't need a full microVM

Alternatives Considered

  • E2B self-hosting via Terraform — too complex, requires AWS/GCP infra
  • Using fetch() only — limits what Function blocks can do

References

Ngôn ngữ chính
TypeScript
Star
29.8k
Fork
3.9k
Merge trung bình
1 giờ 44 phút
Pull request đã merge (30 ngày)
841

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của simstudioai/sim

Tất cả issue của simstudioai/sim

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.