在 Docker 容器里跑完整的 Windows:dockur/windows 快速上手指南
【免费下载链接】windowsWindows inside a Docker container.项目地址: https://gitcode.com/GitHub_Trending/wi/windows
dockur/windows 是一个把 Windows 装进 Docker 容器的开源项目。它自动下载安装镜像、完成无人值守安装,最终给你一个带 Web 界面的 Windows 桌面。适合想在 Linux 服务器上搭建 Windows 环境、测试软件兼容性,或想低成本玩老系统的读者。
它解决了什么问题
平时在服务器上用 Windows,通常要买虚拟机软件、手动导入 ISO、一步步点安装。这个项目把整套流程压缩成启动一个容器:
- 全自动安装:容器启动后自动从微软下载对应版本的 Windows 镜像并完成安装,你只需要在浏览器里看进度;
- 接近原生的速度:基于 QEMU 并使用 KVM 硬件加速,日常操作不卡顿;
- 新旧版本通吃:既支持 Windows 11、Windows 10、Server 2025 这类现代系统,也支持 Windows 7、XP,甚至 Windows 95;
- 资源可自定义:CPU 核心数、内存、磁盘大小都通过环境变量调整;
- 文件互通:容器和宿主机之间可以通过共享文件夹直接交换文件。
项目里的 assets/ 目录按版本存放了各种无人值守安装的应答文件(.cmd 和 .xml),src/ 则是下载、安装、启动、网络等各环节的脚本,想理解实现细节可以对照阅读。
部署前先确认:我的环境能用吗
KVM 是性能的关键,也是最常见的坑。启动前建议确认三点:
- 平台要求:Linux 主机(Docker 或 Podman)需支持 KVM;如果在 Windows 11 上用 Docker Desktop,需要开启嵌套虚拟化。Linux、macOS 和 Windows 10 上的 Docker Desktop 无法访问 KVM,暂不支持。
- 资源要求:至少 2 GB 空闲内存、32 GB 可用磁盘空间。
- 验证 KVM:安装
cpu-checker后执行sudo kvm-ok,看到 "KVM acceleration can be used" 即可用;也可以直接查看/dev/kvm设备是否存在。
如果提示 KVM 不可用,优先检查 BIOS/UEFI 里是否开启了硬件虚拟化(Intel VT-x 或 AMD-V),云主机则需要确认服务商支持嵌套虚拟化。
三步得到一台 Windows 机器
第一步,获取项目并启动容器。可以用 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仓库中已附带一份可直接使用的 compose.yml。如果想查看源码,克隆地址为:git clone https://gitcode.com/GitHub_Trending/wi/windows。
第二步,打开浏览器访问http://127.0.0.1:8006/。安装全程自动进行,不需要任何点击操作,页面会实时显示 Windows 安装画面。
第三步,看到桌面即安装完成。默认创建的用户名为Docker,密码为admin。也可以提前通过USERNAME和PASSWORD环境变量改成自己的账号。
如何选择合适的 Windows 版本
通过VERSION环境变量指定版本,默认为11(Windows 11 Pro)。常用的几个取值:
| 值 | 系统 | 镜像大小 |
|---|---|---|
11 | Windows 11 Pro | 7.9 GB |
10 | Windows 10 Pro | 5.7 GB |
2022 | Windows Server 2022 | 6.0 GB |
7u | Windows 7 Ultimate | 3.1 GB |
tiny10 | Tiny10(精简版) | 3.6 GB |
xp | Windows XP Professional | 0.6 GB |
完整取值表(含 Server 2003–2025、Windows 95/98/2000 等)见项目 README。除预设版本外,VERSION也可以直接填一个 ISO 下载地址,或者把本地 ISO 挂载到容器里的/custom.iso,方便安装非官方镜像。
其他常用调整项同样走环境变量:DISK_SIZE改磁盘容量(默认 64 GB)、RAM_SIZE和CPU_CORES改内存和核心数(默认 4 GB / 2 核)、LANGUAGE改系统语言(支持中文)。全部变量说明可查阅 docs/environment.md。
装好之后怎么连接、怎么传文件
连接方式。浏览器端适合安装阶段观看;日常使用建议走 RDP——用任意微软远程桌面客户端连接容器的 3389 端口,响应更快,还支持剪贴板共享。Web 端如果想要声音,设置AUDIO: "Y"后在网页设置中开启即可。
文件交换。把宿主机的一个文件夹挂载到容器的/shared,安装完成后桌面会出现一个Shared文件夹(映射为 Z: 盘),两边拖文件即可。
网络玩法。默认是 NAT 桥接模式;如果希望这台 Windows 像真实主机一样拥有局域网独立 IP,可以用 macvlan 网络,再通过DHCP: "Y"让它直接从路由器获取地址,局域网里其他设备就能直接访问它。
常见问题
- 安装中途容器停了?检查
./windows(即/storage)目录所在磁盘空间是否充足,安装过程会临时存放 ISO 和磁盘镜像。 - 容器提示 KVM 不可用?按前文方法确认
/dev/kvm与 BIOS 设置;若kvm-ok通过但容器仍报错,可临时加privileged: true排除权限问题。 - 关于许可。该项目只包含开源代码,不分发 Windows 本身;代码中的产品密钥是微软公开的通用安装密钥,不是激活许可。使用前请确保自己拥有有效的 Windows 授权。
从启动容器到桌面就绪只需要等待下载和安装的时间,Windows 环境的搭建成本和日常管理复杂度都降到了很低。
【免费下载链接】windowsWindows inside a Docker container.项目地址: https://gitcode.com/GitHub_Trending/wi/windows
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考