À propos du projet

Dockur Windows est une image de conteneur Docker/Podman qui permet d'exécuter Windows dans un conteneur. Elle automatise le téléchargement et l'installation de la version de Windows sélectionnée, puis fournit l'accès via une visionneuse web sur le port 8006 et via Microsoft Remote Desktop (RDP). Principales fonctionnalités : - Exécute Windows dans un conteneur Docker - Téléchargement automatique et installation sans intervention - Prend en charge les versions modernes et anciennes de Windows, de Windows 95 à Windows 11, ainsi que Windows Server 2003-2025 et certaines variantes communautaires telles que Tiny11 et ReactOS - Performances quasi natives avec accélération KVM - Allocation personnalisable du CPU, de la mémoire et du stockage - Allocation dynamique de mémoire avec ballonnement mémoire - Passthrough USB et partage de dossiers de l'hôte - Prend en charge les réseaux NAT, user-mode, macvlan et macvtap - Diffusion audio optionnelle vers le navigateur - Peut rejoindre un domaine Active Directory pendant l'installation - Peut exécuter des commandes personnalisées ou un script install.bat après l'installation Prérequis : - Docker ou Podman sur un hôte Linux avec prise en charge de KVM - Docker Desktop ou Podman Desktop sur Windows 11 avec virtualisation imbriquée activée - Au moins 2 Go de RAM disponible - Au moins 32 Go d'espace disque libre Docker Desktop sur Linux, macOS et Windows 10 n'est pas pris en charge car il ne fournit pas d'accès KVM aux conteneurs. Utilisation de base avec Docker Compose : ```yaml 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 ``` Après avoir démarré le conteneur, ouvrez http://127.0.0.1:8006/ dans un navigateur et attendez la fin de l'installation automatique. Les identifiants RDP par défaut sont le nom d'utilisateur `Docker` et le mot de passe `admin`, qui peuvent être personnalisés avec les variables d'environnement `USERNAME` et `PASSWORD`. Les variables d'environnement courantes incluent : - `VERSION` — sélectionne la version de Windows, par exemple `11`, `10`, `2022`, ou une URL d'ISO personnalisée - `LANGUAGE` — sélectionne la langue d'installation - `RAM_SIZE` et `CPU_CORES` — ajustent les ressources allouées - `DISK_SIZE` — modifie la taille de disque par défaut de 64 Go - `DISK2_SIZE` / `DISK3_SIZE` — ajoute des disques supplémentaires - `AUDIO` — active la diffusion audio dans le navigateur - `DOMAIN` et `DOMAIN_OU` — jonction automatique à un domaine Active Directory - `DHCP` — permet à Windows de demander directement une IP au routeur - `ARGUMENTS` — transmet des arguments QEMU supplémentaires, par exemple pour le passthrough de périphériques USB Le stockage peut être modifié avec un montage bind vers `/storage`. Un dossier monté sur `/shared` apparaît sur le bureau Windows sous le nom `Shared` et comme lecteur `Z:`. Une ISO peut être montée sur `/custom.iso` pour installer une image non prise en charge, ou une URL peut être fournie via `VERSION`. Le projet note que la mise en réseau macvlan empêche l'IP du conteneur d'être accessible depuis l'hôte Docker, et que les périphériques de stockage de masse USB doivent rester déconnectés lors du premier lancement pour éviter un formatage accidentel. Le projet ne contient que du code open source et ne distribue pas Windows lui-même. Les clés de produit présentes dans le code sont des clés d'installation génériques publiées par Microsoft à des fins d'essai et ne constituent pas des licences d'activation valides. Les utilisateurs sont responsables de disposer d'une licence Windows valide.