Cloud Deployment
AIO Sandbox listens on 0.0.0.0 inside the container. On a cloud host, do not publish the container's 8080 port directly to a public interface. Keep the sandbox private and expose it through a reverse proxy or Ingress that handles TLS and access control.
Recommended Topology
- Bind the sandbox to
127.0.0.1:8080on a single VM, or expose it as aClusterIPservice in Kubernetes. - Terminate TLS at Nginx, a cloud load balancer, or an Ingress controller.
- Add authentication at the edge and/or enable sandbox JWT auth via
JWT_PUBLIC_KEY. - Open only
80/443to the public internet. Do not open8080in security groups or firewall rules.
Option 1: Single VM with Docker and Nginx
1. Start the sandbox on loopback only
For users in mainland China:
2. Lock down cloud networking
- Allow inbound
80and443. - Allow SSH only from administrator IP ranges.
- Do not allow inbound
8080.
3. Put Nginx in front of the sandbox
Place the map block in the http context, then configure your site:
4. Add authentication
At minimum, protect the public entrypoint with one of the following:
- A corporate IdP or SSO layer on the reverse proxy or load balancer.
- IP allowlists for admin-only environments.
- Sandbox JWT authentication via
JWT_PUBLIC_KEY.
Option 2: Kubernetes with Ingress
Use a private service for the sandbox and publish it through an Ingress. Do not put a public Kubernetes Service directly in front of the sandbox service itself.
1. Deployment and Service
2. Publish it with Ingress
3. Cloud-side controls
- Expose only the Ingress or load balancer on
80/443. - Add authentication at the Ingress or gateway layer.
- Prefer network policies, private subnets, and audit logging for shared clusters.
Security Checklist
- Keep the sandbox's
8080listener private. - Terminate TLS before traffic reaches the sandbox.
- Require authentication before exposing VNC, code-server, MCP, or docs.
- Set CPU and memory limits in production.
- Monitor container logs, proxy logs, and health checks.