
windows v6.04
Führen Sie Windows in einem Docker-Container mit KVM-Beschleunigung, automatischer Installation und anpassbaren Ressourcen aus. Unterstützt mehrere Windows-Versionen, USB-Passthrough und macvlan-Netzwerke.
Windows
[![Build]][build_url]
[![Version]][tag_url]
[![Size]][tag_url]
[![Package]][pkg_url]
[![Pulls]][hub_url]
[![Build]][build_url] [![Version]][tag_url] [![Size]][tag_url] [![Package]][pkg_url] [![Pulls]][hub_url]
Windows in einem Docker-Container.
Funktionen ✨
- Führt Windows in einem Docker-Container aus
- Automatischer Download und Installation ohne manuelle Eingriffe
- Unterstützt moderne und ältere Windows-Versionen
- Nahezu native Leistung mit KVM-Beschleunigung
- Anpassbare Zuweisung von CPU, Arbeitsspeicher und Speicherplatz
- Dynamische Speicherzuweisung mit Memory Ballooning
- USB-Durchreichung und Freigabe von Host-Ordnern
- Unterstützt NAT-, User-Mode-, macvlan- und macvtap-Netzwerke
Video 📺
Verwendung 🐳
Docker Compose:
services:
windows:
image: dockurr/windows
container_name: windows
environment:
VERSION: "11"
devices:
- /dev/kvm
- /dev/net/tun
cap_add:
- NET_ADMIN
ports:
- 8006:8006
- 3389:3389/tcp
- 3389:3389/udp
volumes:
- ./windows:/storage
restart: always
stop_grace_period: 2m
Docker CLI:
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
Kubernetes:
kubectl apply -f https://raw.githubusercontent.com/dockur/windows/refs/heads/master/kubernetes.yml
GitHub Codespaces:
Grafischer Installer:
Anforderungen ⚙️
- Docker oder Podman auf einem Linux-Host mit KVM-Unterstützung.
- Docker Desktop oder Podman (Desktop) unter Windows 11 mit aktivierter verschachtelter Virtualisierung.
- Mindestens 4 GB verfügbarer Arbeitsspeicher (RAM).
- Mindestens 64 GB freier Speicherplatz.
[!NOTE] Docker Desktop unter Linux, macOS und Windows 10 bietet Containern derzeit keinen KVM-Zugriff und wird daher nicht unterstützt.
FAQ 💬
Wie verwende ich es?
Sehr einfach! Diese Schritte sind durchzuführen:
-
Starten Sie den Container und verbinden Sie sich über Ihren Webbrowser mit Port 8006.
-
Lehnen Sie sich zurück und entspannen Sie sich, während die Magie passiert – die gesamte Installation läuft vollautomatisch ab.
-
Sobald Sie den Desktop sehen, ist Ihre Windows-Installation einsatzbereit.
Genießen Sie Ihren brandneuen Computer und vergessen Sie nicht, diesem Repository einen Stern zu geben!
Wie wähle ich die Windows-Version aus?
Standardmäßig wird Windows 11 Pro installiert. Sie können jedoch die Umgebungsvariable VERSION zu Ihrer Compose-Datei hinzufügen, um eine alternative Windows-Version zum Download anzugeben:
environment:
VERSION: "10"
Wählen Sie aus den folgenden Werten:
| Wert | Version | Größe |
|---|---|---|
11 | Windows 11 Pro | 7.9 GB |
11l | Windows 11 LTSC | 4.7 GB |
11e | Windows 11 Enterprise | 6.6 GB |
10 | Windows 10 Pro | 5.7 GB |
10l | Windows 10 LTSC | 4.6 GB |
10e | Windows 10 Enterprise | 5.2 GB |
8e | Windows 8.1 Enterprise | 3.7 GB |
7u | Windows 7 Ultimate | 3.1 GB |
vu | Windows Vista Ultimate | 3.0 GB |
xp | Windows XP Professional | 0.6 GB |
2k | Windows 2000 Professional | 0.4 GB |
2025 | Windows Server 2025 | 7.6 GB |
2022 | Windows Server 2022 | 6.0 GB |
2019 | Windows Server 2019 | 5.3 GB |
2016 | Windows Server 2016 | 6.5 GB |
2012 | Windows Server 2012 | 4.3 GB |
2008 | Windows Server 2008 | 3.0 GB |
2003 | Windows Server 2003 | 0.6 GB |
[!TIP] Für die Installation von ARM64-Versionen von Windows verwenden Sie dockur/windows-arm.
Wie ändere ich den Speicherort?
Um den Speicherort zu ändern, fügen Sie den folgenden Bind-Mount in Ihre Compose-Datei ein:
volumes:
- ./windows:/storage
Ersetzen Sie den Beispielpfad ./windows durch den gewünschten Speicherordner oder ein benanntes Volume.
Wie ändere ich die Größe der Festplatte?
Um die Standardgröße von 64 GB zu erweitern, fügen Sie die Einstellung DISK_SIZE zu Ihrer Compose-Datei hinzu und legen Sie die gewünschte Kapazität fest:
environment:
DISK_SIZE: "256G"
[!TIP] Dies kann auch verwendet werden, um eine vorhandene Festplatte ohne Datenverlust auf eine größere Kapazität zu vergrößern. Allerdings müssen Sie danach die Festplattenpartition manuell erweitern, da der hinzugefügte Speicherplatz als nicht zugeordnet angezeigt wird.
Wie teile ich Dateien mit dem Host?
Nach der Installation befindet sich ein Ordner namens Shared auf Ihrem Desktop, der zum Austauschen von Dateien mit dem Host-Rechner verwendet werden kann.
Um einen Ordner auf dem Host für diesen Zweck auszuwählen, fügen Sie den folgenden Bind-Mount in Ihre Compose-Datei ein:
volumes:
- ./example:/shared
Ersetzen Sie den Beispielpfad ./example durch Ihren gewünschten Freigabeordner, der dann als Shared sichtbar wird.
Wie ändere ich die Anzahl der CPU-Kerne oder die Menge an RAM?
Standardmäßig darf Windows 2 CPU-Kerne und 4 GB RAM verwenden.
Wenn Sie dies anpassen möchten, können Sie die gewünschte Menge mithilfe der folgenden Umgebungsvariablen festlegen:
environment:
RAM_SIZE: "8G"
CPU_CORES: "4"
Wie konfiguriere ich Benutzername und Passwort?
Standardmäßig wird ein Benutzer namens Docker erstellt; dessen Passwort lautet admin.
Wenn Sie während der Installation andere Anmeldedaten festlegen möchten, können Sie diese in Ihrer Compose-Datei konfigurieren:
environment:
USERNAME: "bill"
PASSWORD: "gates"
Wie wähle ich die Windows-Sprache aus?
Standardmäßig wird die englische Version von Windows heruntergeladen.
Sie können jedoch die Umgebungsvariable LANGUAGE zu Ihrer Compose-Datei hinzufügen, um eine alternative Sprache für den Download anzugeben:
environment:
LANGUAGE: "French"
Sie können zwischen Folgendem wählen: 🇦🇪 Arabic, 🇧🇬 Bulgarian, 🇨🇳 Chinese, 🇭🇷 Croatian, 🇨🇿 Czech, 🇩🇰 Danish, 🇳🇱 Dutch, 🇬🇧 English, 🇪🇪 Estonian, 🇫🇮 Finnish, 🇫🇷 French, 🇩🇪 German, 🇬🇷 Greek, 🇮🇱 Hebrew, 🇭🇺 Hungarian, 🇮🇹 Italian, 🇯🇵 Japanese, 🇰🇷 Korean, 🇱🇻 Latvian, 🇱🇹 Lithuanian, 🇳🇴 Norwegian, 🇵🇱 Polish, 🇵🇹 Portuguese, 🇷🇴 Romanian, 🇷🇺 Russian, 🇷🇸 Serbian, 🇸🇰 Slovak, 🇸🇮 Slovenian, 🇪🇸 Spanish, 🇸🇪 Swedish, 🇹🇭 Thai, 🇹🇷 Turkish und 🇺🇦 Ukrainian.
Wie wähle ich das Tastaturlayout aus?
Wenn Sie ein Tastaturlayout oder eine Region einrichten möchten, die nicht der Standard für Ihre ausgewählte Sprache ist, können Sie die Variablen KEYBOARD und REGION wie folgt hinzufügen:
environment:
REGION: "en-US"
KEYBOARD: "en-US"


