
Esegui Windows all'interno di un container Docker con accelerazione KVM, installazione automatica e risorse personalizzabili. Supporta più versioni di Windows, pass-through USB e networking macvlan.
[![Build]][build_url] [![Version]][tag_url] [![Size]][tag_url] [![Package]][pkg_url] [![Pulls]][hub_url]
Esegui Windows all'interno di un container Docker.
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 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
kubectl apply -f https://raw.githubusercontent.com/dockur/windows/refs/heads/master/kubernetes.yml
[!NOTE] Docker Desktop su Linux, macOS e Windows 10 attualmente non fornisce accesso KVM ai container e pertanto non è supportato.
Molto semplice! Ecco i passaggi:
Avvia il container e connettiti alla porta 8006 usando il tuo browser web.
Rilassati mentre la magia accade; l'intera installazione verrà eseguita automaticamente.
Una volta visualizzato il desktop, la tua installazione di Windows è pronta all'uso.
Goditi la tua nuova macchina e non dimenticare di mettere una stella a questo repo!
Per impostazione predefinita verrà installato Windows 11 Pro. Puoi aggiungere la variabile d'ambiente VERSION al tuo file compose, per specificare una versione alternativa di Windows da scaricare:
environment:
VERSION: "10"
Scegli tra i valori seguenti:
| Valore | Versione | Dimensione |
|---|---|---|
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] Per installare versioni ARM64 di Windows usa dockur/windows-arm.
Per cambiare la posizione di archiviazione, includi il seguente bind mount nel tuo file compose:
volumes:
- ./windows:/storage
Sostituisci il percorso di esempio ./windows con la cartella di archiviazione o il volume nominato desiderato.
Per espandere la dimensione predefinita di 64 GB, aggiungi l'impostazione DISK_SIZE al tuo file compose e impostala sulla capacità preferita:
environment:
DISK_SIZE: "256G"
[!TIP] Questo può essere usato anche per ridimensionare un disco esistente a una capacità maggiore senza perdita di dati. Tuttavia, dovrai estendere manualmente la partizione del disco successivamente, poiché lo spazio disco aggiunto apparirà come non allocato.
Dopo l'installazione, sul desktop sarà presente una cartella chiamata Shared che può essere utilizzata per scambiare file con la macchina host.
Per selezionare una cartella sull'host a questo scopo, includi il seguente bind mount nel tuo file compose:
volumes:
- ./example:/shared
Sostituisci il percorso di esempio ./example con la cartella condivisa desiderata, che diventerà quindi visibile come Shared.
Per impostazione predefinita, Windows potrà utilizzare 2 core CPU e 4 GB di RAM.
Se vuoi regolare questo valore, puoi specificare la quantità desiderata utilizzando le seguenti variabili d'ambiente:
environment:
RAM_SIZE: "8G"
CPU_CORES: "4"
Per impostazione predefinita, viene creato un utente chiamato Docker e la sua password è admin.
Se desideri impostare credenziali diverse durante l'installazione, puoi configurarle nel tuo file compose:
environment:
USERNAME: "bill"
PASSWORD: "gates"
Per impostazione predefinita, verrà scaricata la versione inglese di Windows.
Ma puoi aggiungere la variabile d'ambiente LANGUAGE al tuo file compose per specificare una lingua alternativa da scaricare:
environment:
LANGUAGE: "French"
Puoi scegliere tra: 🇦🇪 Arabo, 🇧🇬 Bulgaro, 🇨🇳 Cinese, 🇭🇷 Croato, 🇨🇿 Ceco, 🇩🇰 Danese, 🇳🇱 Olandese, 🇬🇧 Inglese, 🇪🇪 Estone, 🇫🇮 Finlandese, 🇫🇷 Francese, 🇩🇪 Tedesco, 🇬🇷 Greco, 🇮🇱 Ebraico, 🇭🇺 Ungherese, 🇮🇹 Italiano, 🇯🇵 Giapponese, 🇰🇷 Coreano, 🇱🇻 Lettone, 🇱🇹 Lituano, 🇳🇴 Norvegese, 🇵🇱 Polacco, 🇵🇹 Portoghese, 🇷🇴 Rumeno, 🇷🇺 Russo, 🇷🇸 Serbo, 🇸🇰 Slovacco, 🇸🇮 Sloveno, 🇪🇸 Spagnolo, 🇸🇪 Svedese, 🇹🇭 Thailandese, 🇹🇷 Turco e 🇺🇦 Ucraino.
Se desideri impostare un layout di tastiera o una lingua che non sia quello predefinito per la lingua selezionata, puoi aggiungere le variabili KEYBOARD e REGION in questo modo:
environment:
REGION: "en-US"
KEYBOARD: "en-US"
Per scaricare un'immagine ISO non supportata, specifica il suo URL nella variabile d'ambiente VERSION:
environment:
VERSION: "https://example.com/win.iso"