4 min read

Windows in Docker: Run Windows 11 in a Container With One Command (GitHub, Scanned)

Run Windows 11, 10, Server or classic versions in a Docker container, used from your browser.

Windows in Docker logo
✅
Scan: safe. Nothing malicious. Change the default Windows login before exposing the RDP port, and note that you still need a valid Windows licence. Scanned Oct 19, 2026; the full report is below.

dockur/windows runs a full copy of Windows inside a Docker container. Start it with one command, open port 8006 in a browser, and watch it download the official Windows image from Microsoft, install itself without any clicks, and land on a desktop. After that you can keep using the browser viewer or connect with any Remote Desktop client for clipboard sharing and better speed.

Under the hood it is QEMU with KVM acceleration, so performance is close to native on a Linux host. You pick the version with one setting: Windows 11, 10, LTSC and Enterprise editions, Server 2025 back to 2003, and even XP, 98 and 95 for nostalgia. Options cover CPU, RAM and disk size, shared folders, USB passthrough, a custom ISO, a command to run after install, and joining a domain. Desktop projects such as WinBoat and WinApps use it as their engine to run Windows apps on Linux.

It is MIT-licensed, with about 53,700 stars and 34 contributors, at v6.06 when scanned. A sister project, dockur/macos, does the same for macOS.

  • Repository: github.com/dockur/windows
  • Licence: MIT (MIT License)
  • Language: Shell. Stars: 53.7K. Forks: 5,015. Last push: Oct 8, 2026.
  • Scan: safe, Oct 19, 2026, commit 013ea27

Who it is for

Linux users who need a Windows app now and then, developers and testers who want a disposable Windows machine, and home-lab users who prefer containers to a separate virtual machine manager.

Getting started

1. Start Windows 11 (Linux host with KVM)

docker run -it --rm --name windows -e "VERSION=11" -p 8006:8006 --device=/dev/kvm --device=/dev/net/tun --cap-add NET_ADMIN -v "${PWD:-.}/windows:/storage" --stop-timeout 120 docker.io/dockurr/windows

2. Watch the installation and use the desktop in your browser

open http://127.0.0.1:8006

Needs Docker or Podman on a Linux host with KVM, or Windows 11 with nested virtualisation, plus at least 2 GB of RAM and 32 GB of disk. Docker Desktop on macOS and Windows 10 cannot give containers KVM and is not supported. Set USERNAME and PASSWORD in the environment before the first start to replace the default account.

Safety scan

We cloned dockur/windows at commit 013ea27 on Oct 19, 2026 and ran the checks described on the GitHub Tools page: credential patterns, decode-and-execute code, install-time scripts, committed binaries, risky CI workflows, every host the code talks to, known vulnerabilities in pinned dependencies, and project hygiene. A person read every hit. This is what we found.

  • No secrets, no suspicious code patterns and no committed binaries across 121 files and about 25,000 lines, mostly shell and Windows batch scripts.
  • Windows images come from Microsoft's own download servers. When those cannot be reached, the scripts fall back to community mirrors (dl.bobpony.com, files.dog, archive.org and a few others) for specific versions, and check each file against a SHA-256 hash and size written into the script. The product keys in the code are Microsoft's generic install keys, not activations.
  • The default Windows account is user Docker with password admin, and the example compose file publishes the RDP port 3389 on every interface. Set your own USERNAME and PASSWORD, or bind the ports to 127.0.0.1, before running it anywhere other people can reach.
  • The container needs /dev/kvm, /dev/net/tun and the NET_ADMIN capability, which is what a virtual machine requires but more access than an ordinary container gets. The image builds on the same maintainer's qemux/qemu base image and downloads virtio drivers from its own release, which this scan of the windows repository does not cover.
  • 9 workflows, none using pull_request_target; none of the 17 third-party actions is pinned to a commit. Licence, Dependabot and Renovate present; no security policy or contributing guide.

What the scanner counted

CheckResult
SecretsNone found.
Suspicious codeNone found.
Install-time code1 installer script
Committed binariesNone.
CI workflows9 workflows. None use pull_request_target. 17 of 17 third-party actions pinned to a tag rather than a commit.
Network hosts16 distinct hosts referenced from source; most often www.google.com, software-static.download.prss.microsoft.com, github.com, software-download.microsoft.com. No URLs to bare IP addresses.
Known vulnerabilitiesNo lockfile to check: dependencies are declared as ranges, so what gets installed is whatever is current on the day.
Project hygieneHas automated dependency updates, licence file. Missing security policy, CodeQL, contributing guide.
OpenSSF ScorecardNot scored: the project is not in Scorecard's weekly index.

The raw findings

Every hit the scanner wrote out, with a link to the exact line at the scanned commit. Secrets candidates are redacted.

Installer scripts (1)

By the numbers

Stars53.7K
Forks5,015
Contributors34
Commits975
Open issues12
Open pull requests3
Releases128
Latest releasev6.06
LicenceMIT
Main languageShell
Project age2 years
Last pushOct 8, 2026
Tracked files121
Lines of code25.1K
Checkout size1 MB

Lines by language: Shell 17K, Batch 4,207, YAML 2,714, Markdown 673, JSON 505.

Questions

The project is free and MIT-licensed, and it does not distribute Windows: it downloads Microsoft's own installation images. Windows itself still needs a valid licence for ongoing use, as the README says; without activation it runs with the usual limits.

Does it work on a Mac or in Docker Desktop?

Not on macOS, and not in Docker Desktop on Windows 10 or Linux, because they do not give containers access to KVM. It works on Linux with Docker or Podman and on Windows 11 with nested virtualisation turned on.

Can I play games or use a GPU in it?

Not well. It is a virtual machine with emulated graphics, so office apps, browsers and tools run fine, but 3D games and GPU-heavy software do not. For gaming, a dual boot or a VM with GPU passthrough is the better route.


This post is part of GitHub Tools, where every repository is cloned and scanned before it is written up. The scan is a snapshot of one commit on one day; the repository has moved on since, so check it before you install.