Windows in a Docker Container? Yes, Really!
If you live in a Linux or macOS household, you’ll eventually run into that age-old problem: Suddenly, you need an application that only runs on Windows. Maybe it’s some obscure BIOS tool that technically launches via Wine but doesn’t produce usable results. For tech-savvy folks, the first instinct is usually: "I’ll just set up a VM." Sure, that works—but it’s not exactly straightforward.
First, you need a hypervisor, then a compatible ISO file, followed by VM configuration, partitioning, Windows installation, driver setup, and so on. In short: It’s doable, but not exactly pleasant.
But what if I told you that you could launch a full Windows installation inside a Docker container—with shared storage, RDP access, and optional VLAN support? Sounds crazy? It kind of is. But it works.
The Idea Behind the Project
A developer named Kroese published a GitHub project that makes this possible. A Docker container that automatically sets up a fresh Windows installation—no manual setup required. Just start the container, wait a few minutes, and you get a fully functional Windows environment. Access it via your browser or RDP.
And the best part? You don’t even have to install Windows yourself. The container handles the entire process—from fetching the image to finalizing the setup.
How Does It Work Technically?
If you look closely at the Docker command, you’ll notice the flag passing through /dev/kvm—Linux’s kernel-based virtualization mechanism. In short: This isn’t a "true" Windows container but rather a Linux container running a KVM-based VM. So, no magic here—just clever automation built on proven technology.
The catch? Hardware virtualization must be available and enabled—otherwise, nothing will work.
The Biggest Advantage: Convenience
What makes this special isn’t technical innovation but the massive gain in convenience. The most tedious aspects of a Windows installation—partitioning, initial setup, language, and keyboard selection—are completely automated.
Yet, you still get all the benefits of a "normal" KVM-based VM: USB and SATA passthrough, adjustable CPU cores and RAM allocation, and even optional PCIe passthrough (though that’s probably better suited for dedicated VMs).
Everyday Use: RDP Instead of VNC
The container’s web interface uses VNC, which is fine for quick access—but it’s slow and doesn’t support audio. RDP is the better option here. The container forwards the RDP port by default, allowing easy remote access from macOS, Linux, or even another Windows machine.
With shared folders, you can also mount directories from the host system, making file transfers between Windows and Linux seamless. The default container allocates 2 CPU cores, 4 GB of RAM, and 64 GB of storage—all adjustable via environment variables.
Multiple Windows Versions? No Problem!
The container supports not just Windows 11 but older versions too—from XP to Server 2022. You can even use stripped-down variants like Tiny11 or Tiny10—or supply your own ISO. In one test, five Windows versions ran simultaneously: XP, Vista, 7, 10, and 11—all on an Intel N100 system drawing just 18W.
(Windows 8.1 refused to cooperate—but who misses it anyway?)
What About Licensing?
The Windows images come either directly from Microsoft (for newer versions) or from open sources like Bob Pony. Fresh installations are unactivated but run without restrictions for 30 days. For longer use, you’ll need a valid license key. According to the developer, the project itself contains no proprietary code and relies entirely on open-source components.
Verdict: Simple, Practical, Brilliant
Whether you need to quickly test Windows software, tinker with legacy systems, or run specialized tools like BIOS editors—this Docker project offers a sleek, hassle-free solution without major compromises. Of course, it’s no replacement for a high-performance VM with a dedicated GPU, but that’s not the goal.
What remains is an impressive example of what’s possible today with a bit of creativity and open standards—no installation headaches required.
And who knows? Maybe Windows XP will save your day yet again.