#Self-Hosting Rudder Virt
We offer a self-hosted deployment zone by installing Rudder Virt OS on a bare-metal server you own. Self-hosting moves the compute — the box that runs student VMs — onto your hardware. The UI, accounts, module library, and autograder definitions still live at ruddervirt.com.
#What it is
Rudder Virt OS is a custom Linux distribution distributed as an installable ISO. It is based on CoreOS, and the ISO lays down everything needed to host student VMs on a single bare-metal server. There is no separate stack to install on top of it.
The source and current releases are at github.com/ruddervirt/ruddervirt-os.
#Architecture
A self-hosted zone is your server plus the Rudder Virt cloud.
Students log in at ruddervirt.com as usual. When they start a module in your zone, the UI dispatches to your server, which runs the VMs and streams the display back through the cloud.
#Hardware requirements
| Component | Requirement |
|---|---|
| CPU | Bare-metal x86_64 with VT-x or AMD-V. Nested virtualization is not supported — Rudder Virt OS must boot on the metal, not inside a VM. |
| Memory | 128 GiB minimum; more is recommended. Memory is the most common capacity bottleneck per concurrent student. |
| Storage | 500 GiB minimum, SSD required, NVMe recommended. An external SAN can be used in place of local disks. |
| Network | At least gigabit Ethernet with internet egress. 10 Gbps private network recommended for multi-node setups. |
#Installation
- Download the Rudder Virt OS ISO from github.com/ruddervirt/ruddervirt-os.
- Write the ISO to a USB stick or attach it via IPMI virtual media.
- Boot the target server from the ISO.
- Follow the installer prompts to install onto the target disk. The installer wipes the disk and writes the immutable OS image.
- Reboot. The server comes up with all services running.
- Email selfhosted@ruddervirt.com to register the box with your Rudder Virt account. The team will complete the connection so modules can be promoted into your zone.
#Updates
The OS updates atomically and automatically, the same way CoreOS does. There is nothing to apt upgrade, no charts to roll, and no version coordination with the cloud — new releases stream in and apply on the next reboot.
#Operational notes
- Internet connectivity is required. The server must keep an outbound connection to ruddervirt.com. If it loses connectivity, students in your zone cannot start or finish modules until it reconnects.
- Capacity planning. Each running module consumes the CPU, RAM, and disk declared in its manifest, multiplied by concurrent students. A classroom of fifty students starting at once is fifty VMs in flight at the same instant — size memory accordingly.
- Backups. Application data (accounts, classrooms, scores) is held by ruddervirt.com. Module disk images on your box are managed by the OS and rebuilt from manifests on demand; you do not need to back them up.
- Disaster. If your server is offline, students in your zone cannot run modules. Sessions stay logged in at ruddervirt.com but VM operations error out until the box is back.
#Getting started
If you are about to set one of these up, contact selfhosted@ruddervirt.com. The team will share the current ISO release, advise on hardware sizing for your expected concurrent load, and walk through registration.