Infrastructure / Full-Stack

Sandbox Runner

Sichere Multi-Language-Code-Execution-Plattform mit Docker-Isolation, Kotlin-Backend und modernem Full-Stack-Dashboard.

Überblick

Sandbox Runner ist eine verteilte Multi-Language Sandbox-Execution-Plattform zur sicheren Ausführung von untrusted Code innerhalb isolierter Docker-Container. Unterstützt werden Python, JavaScript, Kotlin, Java und Go.

Der Fokus lag auf Platform Engineering, Distributed Systems, Runtime Isolation, horizontal skalierbaren Worker-Architekturen, Security Hardening und moderner Full-Stack-Entwicklung mit Kotlin, Redis, Docker und React.

Problemstellung

Sichere Code-Execution-Systeme benötigen starke Isolation, kontrollierte Runtime-Umgebungen, skalierbare Worker-Systeme und robuste Ressourcenbegrenzungen, um untrusted Code zuverlässig ausführen zu können.

Ziel war es, eine moderne Distributed-Sandbox-Plattform mit Docker-Isolation, Redis-basierter Async Queue, Live-Streaming und horizontal skalierbarer Infrastruktur aufzubauen.

Architekturansatz

Distributed Worker Architecture

Runs werden asynchron über Redis-Queues verarbeitet und von horizontal skalierbaren Worker-Instanzen ausgeführt.

Docker Sandbox Isolation

Jede Ausführung läuft innerhalb isolierter Docker-Container mit deaktiviertem Netzwerk, Runtime-Limits und Security-Hardening.

Live Runtime Streaming

stdout, stderr und Statusänderungen werden über Server-Sent Events (SSE) live an das Frontend gestreamt.

Worker Observability

Die Plattform enthält Queue-Statistiken, Worker-Monitoring, Active-Job-Tracking und Dead-Letter-Observability.

Technische Features

Besonders wichtig war die Kombination aus sicherer Runtime-Isolation, asynchroner Worker-Architektur, containerisierter Infrastruktur und moderner Full-Stack-Entwicklung.

Dashboard & Execution UI

Herausforderungen

Die größte Herausforderung bestand darin, sichere containerisierte Code-Ausführung mit asynchroner Distributed-Execution, Live-Streaming und Runtime-Kontrolle zuverlässig zu kombinieren.

Besonders komplex waren Security Hardening, Worker-Orchestrierung, Container Lifecycle Management, Cancellation-Flows und sprachspezifische Runtime-Profile.

Learnings

Das Projekt hat besonders gezeigt, wie wichtig saubere Infrastruktur-Grenzen, Security Hardening, Event-Driven-Architekturen und robuste Worker-Systeme für moderne Runtime-Plattformen sind.