How a Single 8 GB Server Powered 500k Users for 15 Years – The Webminal Story

Webminal, a free online Linux learning platform built in 2010, has survived 15 years on a single 8 GB CentOS server, serving over 500,000 users by using minimalist architecture, User Mode Linux, Shellinabox, eBPF monitoring, and a community‑first mindset despite multiple outages and failed monetisation attempts.

Java Tech Enthusiast
Java Tech Enthusiast
Java Tech Enthusiast
How a Single 8 GB Server Powered 500k Users for 15 Years – The Webminal Story

Webminal is a free online Linux learning platform launched around 2010 by Lakshmipathi (India) and Freston (Netherlands). It still runs on a single CentOS server with 8 GB RAM, no container orchestration, and a deliberately minimal stack.

Architecture : the backend is a Flask 0.12.5 application; the terminal interface is provided by Shellinabox (a 2005‑era web‑based SSH client); data is stored in MySQL on the same host; the “root” lab environment runs inside User Mode Linux (UML), a 2001 technology that runs a full Linux kernel in user space; eBPF/execsnoop is used for real‑time command tracing; the front‑end consists of plain HTML with inline CSS, avoiding React, Vue, npm, or other modern frameworks.

Resilience : despite a data‑center fire in 2021 that lost 150 k accounts, power‑outage incidents, and traffic spikes (e.g., a Spanish tech blog drove 10 k users in a single day), the service has remained operational, accumulating over 2.8 million anonymised commands and more than 500 k unique users.

Technical choices : Docker was rejected because it cannot provide true block‑device access needed for commands like fdisk, lvm, or mkfs. UML gives each user a complete kernel instance with four 64 MB virtual block devices and a 256 MB memory limit, while copy‑on‑write (COW) shared images keep storage overhead low (≈2 GB extra for 100 concurrent users). Shellinabox was chosen for its ability to traverse firewalls and corporate networks, even though it is older and slower than modern WebSocket terminals. $ screen -x chat Business model & community : the project has no ads, no venture funding, and no subscription revenue; Lakshmipathi personally pays the server costs. Attempts to raise money via YC, paid subscriptions, and sponsorships have largely failed, but the platform’s impact is evident from user testimonials worldwide. To lift the 8 GB memory bottleneck and increase concurrent root sessions, a GitHub Sponsors page was opened for donations.

Conclusion : Webminal demonstrates that a deliberately simple, “old‑school” tech stack can sustain massive usage when it aligns with a clear educational mission, proving that longevity sometimes comes from resisting the latest trends.

eBPFCaseStudyLinuxEducationShellinaboxUserModeLinuxWebminal
Java Tech Enthusiast
Written by

Java Tech Enthusiast

Sharing computer programming language knowledge, focusing on Java fundamentals, data structures, related tools, Spring Cloud, IntelliJ IDEA... Book giveaways, red‑packet rewards and other perks await!

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.