LPU Labs
On-demand, isolated, browser-accessible development and learning environments. Persistent storage, multi-tenant network isolation, zero local setup.
Stack: FastAPI, React, Docker SDK, MongoDB (Motor), WebSockets, JWT/OAuth2, KasmVNC, code-server, APScheduler, Prometheus, OpenAPI, Nginx
What it is
LPU Labs is a platform-as-a-service (PaaS) layer above Docker, abstracting container complexity into a web-based interface. Users authenticate via OAuth2 or email and password, then provision pre-configured lab environments — Ubuntu desktop, Kali Linux, DevOps toolchains, data science stacks — or database services through a React frontend.
The platform enforces isolation at the network layer: each user gets a dedicated Docker network, which prevents cross-user traffic. Persistent volumes ensure data survives container restarts.
How it works
- Authenticate — the user logs in via Google/GitHub OAuth or email.
- Select an environment — pick a lab, database, or DevOps toolchain from the catalog.
- Provision — the backend creates an isolated Docker network and persistent volume, then spawns a container with resource limits.
- Access via browser — the user connects through KasmVNC or code-server, fully in-browser.
- Auto-cleanup — idle environments terminate after 30 minutes; data persists in volumes.
Core features
- Container orchestration — Docker SDK integration, lifecycle management, image building patterns, CPU and memory limits.
- Network isolation — user-specific overlay networks, multi-tenant segmentation, bridge networking, zero cross-user traffic.
- Persistent storage — Docker volumes per user, bind mounts, data retention across container lifecycles and restarts.
- Browser-based access — KasmVNC for full desktop environments, code-server for VS Code. Nothing to install locally.
- Auth and security — OAuth2 (Google/GitHub), JWT with refresh tokens, rate limiting, session management.
- Auto-cleanup — background schedulers (APScheduler) handle idle container termination, resource cleanup, and health checks.
- Real-time updates — WebSocket connections for live notifications, container status broadcasts, resource monitoring.
- Observability — Prometheus metrics, structured logging with rotation, usage tracking, audit trails.
20+ pre-built environments
LPU Labs ships with ready-to-use environments covering development, cybersecurity, data science, and DevOps:
- Development — Ubuntu desktop, code-server, Python/Node.js/Go stacks, static site hosting.
- Cybersecurity — Kali Linux, CTF challenges (gcc3-exploit, OWASP Juice Shop), penetration testing.
- Data science — Jupyter notebooks, data science stacks, ML environments.
- DevOps — Jenkins, GitLab, Ansible, Terraform toolchains.
- Databases — shared or isolated database services (MongoDB, PostgreSQL, MySQL).
- Embedded — Buildroot embedded systems environments.
Technology stack
Built with production-grade patterns — async architecture, RESTful API design, JWT auth, rate limiting, structured logging, and separation of concerns (controllers, services, core modules).
Project scope
LPU Labs spans multiple engineering domains, applying cloud computing, educational technology, DevOps automation, cybersecurity training infrastructure, and distributed systems architecture.
The platform serves practical use cases in cybersecurity training, software development education, and computer science labs — while exercising network engineering, async web architecture, and multi-tenant resource management.