news 2026/8/30 9:30:21

3条命令在Docker容器里跑起Windows:dockur/windows完整指南 [特殊字符]

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
3条命令在Docker容器里跑起Windows:dockur/windows完整指南 [特殊字符]

3条命令在Docker容器里跑起Windows:dockur/windows完整指南 🐳

【免费下载链接】windowsWindows inside a Docker container.项目地址: https://gitcode.com/GitHub_Trending/wi/windows

想让 Windows 跑进 Docker 容器,却不想手动点安装向导、不想折腾虚拟机环境?dockur/windows 这个开源项目把整件事压缩成了全自动流程:拉取镜像、起容器,剩下的下载 ISO、应答安装、配置网络全部由脚本代劳,装完你拿到的就是一台可直接远程桌面的 Windows 机器。它默认安装Windows 11 Pro,也兼容从 Win95 到 Server 2025 的几十种版本,性能方面通过KVM 硬件加速接近原生速度。

动手前:确认宿主机满足3个硬性条件

KVM 是这个方案的底线,没有它就只能软模拟,体验会差一个量级。三条要求:

条件最低要求说明
内存2 GB可用容器默认给 Windows 分配 4 GB,可自行调低
磁盘32 GB空闲磁盘默认 64 GB,镜像文件会占用额外空间
虚拟化开启 Intel VT-x / AMD-VLinux 主机需 Docker +/dev/kvm;Windows 11 上可用 Docker Desktop(需开启嵌套虚拟化)

验证方法很简单:装好cpu-checker后跑sudo kvm-ok,输出包含KVM acceleration can be used即合格;同时用ls -l /dev/kvm确认设备存在。如果主机本身是虚拟机(比如某家 VPS),要确认云厂商支持嵌套虚拟化,否则这一关过不了。

一条命令启动容器,剩下交给浏览器

准备工作完成后,部署只需要一条命令:

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

接着打开浏览器访问http://127.0.0.1:8006,你会在网页里直接看到 Windows 的安装进度。整个过程零交互:容器内部会先通过 src/mido.sh 直接向微软官方通道拉取 ISO,再由 src/install.sh 生成应答文件完成无人值守安装,装完 ISO 还会自动删除以省空间。等网页里出现桌面,安装就算完成了。

如果偏好 Compose,项目根目录已附带 compose.yml,直接docker compose up -d即可,内容与上面的 CLI 等价。

按需求挑版本:从 Win11 到 Win95 共26个选项

版本通过VERSION环境变量控制,常用取值如下(数据来自官方说明,大小为镜像下载体积):

取值系统镜像大小适合场景
11Windows 11 Pro7.9 GB默认,完整体验
11lWindows 11 LTSC4.7 GB长期支持、更干净
10Windows 10 Pro5.7 GB兼容老软件
2025Windows Server 20257.6 GB服务器角色
tiny11Tiny115.3 GB轻量化日常
95Windows 950.6 GB怀旧与老游戏

除了这些预设值,VERSION还能直接填一个 ISO 下载地址,或者把本地 ISO 挂载到/custom.iso跳过下载——assets/ 目录里存放的各版本.cmd/.xml应答文件就是按这个机制工作的。语言方面加一行LANGUAGE: "Chinese"即可换中文系统,支持 30 多种语言。

日常使用:网页、远程桌面与共享文件夹

装完之后有三条访问路径,按需选择:

  • 网页(8006 端口):适合安装期间看进度;正式使用响应度略逊,且不支持剪贴板同步。
  • RDP(3389 端口):推荐的主力方式,用任意微软远程桌面客户端连接容器 IP,账号Docker,密码admin,可加USERNAME/PASSWORD变量自定义。
  • 文件共享:把宿主机目录挂载到/shared,Windows 桌面会出现Shared文件夹(盘符Z:),双向拷文件无需网盘。

想要声音就把AUDIO设为Y,再在网页的 Settings → Advanced 里打开 Audio 开关;只有开启时才产生额外带宽。

调资源:CPU、内存、磁盘都用一个变量搞定

默认配置是2 核 CPU + 4 GB 内存 + 64 GB 磁盘,在 Compose 里加几个变量就能调:

environment: RAM_SIZE: "8G" CPU_CORES: "4" DISK_SIZE: "256G"

RAM_SIZECPU_CORES还支持halfmax这类相对值,直接吃掉宿主机一半或全部资源。多挂两块盘用DISK2_SIZEDISK3_SIZE即可。进阶玩法还包括:给容器配 macvlan 独立 IP、让 Windows 通过DHCP: "Y"像真实 PC 一样从路由器拿地址、ARGUMENTS透传 USB 设备。所有可选变量——从磁盘 I/O 模式到内存气球回收——在 官方环境变量文档 里有一张完整清单,建议收藏备查。

批量交付:让安装完成后自动执行你的脚本

这是把单台玩具变成批量基础设施的关键:设置COMMAND变量可在安装最后一步执行任意一条命令;把目录挂载到/oem并放入install.bat,则整个目录会被拷进C:\OEM并自动运行脚本——软件静默安装、注册表修改、加域(DOMAIN+DOMAIN_OU自动加入 Active Directory)都可以在这一步完成。换句话说,一条流水线可以连续产出多台配置一致的 Windows 容器,非常适合测试矩阵和教学机房这类场景。

准备好后,拉镜像、起容器、连远程桌面,三条命令就能让 Windows 在你的 Linux 服务器上开工。如果只是想先看看效果,从最小的2003(0.6 GB)版本试起也是个好选择 🚀

【免费下载链接】windowsWindows inside a Docker container.项目地址: https://gitcode.com/GitHub_Trending/wi/windows

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/30 9:30:14

dockur/windows:在 Docker 容器中运行完整 Windows 系统的实操指南

dockur/windows:在 Docker 容器中运行完整 Windows 系统的实操指南 【免费下载链接】windows Windows inside a Docker container. 项目地址: https://gitcode.com/GitHub_Trending/wi/windows dockur/windows 让 Windows 直接跑在 Docker 容器里&#xff1a…

作者头像 李华
网站建设 2026/8/30 9:25:52

Penpot 开源设计工具:基于开放标准的设计协作平台

Penpot 开源设计工具:基于开放标准的设计协作平台 【免费下载链接】penpot Penpot: The open-source design platform for Product teams that need scalable collaboration. 项目地址: https://gitcode.com/GitHub_Trending/pe/penpot 设计师交付的稿件&…

作者头像 李华
网站建设 2026/8/30 9:24:36

遍历性游戏Python模拟:期望正收益为何长期亏损?

第一次看到 Ergodicity Game(遍历性游戏)时,我的第一反应是:这不就是个概率题吗?一个抛硬币游戏,正面赚 50%,反面亏 40%,单轮期望明明是正的,长期玩下去怎么可能会亏&…

作者头像 李华
网站建设 2026/8/30 9:24:35

Spring AI 2.0实战:从多模型到Agent的一周学习路线

Spring AI 2.0 对 Java 开发者来说,最值得优先搞清楚的是整条学习线:多模型接入、Tools 函数调用、MCP 协议、Skills 复用、Agent 编排,这五个东西怎么串起来,而不是只学会某一个 API。这篇文章按一套一周能走完的实战路线写&…

作者头像 李华
网站建设 2026/8/30 9:23:18

单片机电源管理:12V转5V转3.3V两级降压方案设计与调试

做单片机项目时,电源管理往往排在最容易被低估的位置。LED 不亮、ADC 跳动、程序反复复位,很多故障查到最后,不是逻辑写错,而是供电链路本身有问题。本文选择一条非常常见的供电路径:12V 输入,先用第一级降…

作者头像 李华
网站建设 2026/8/30 9:22:39

分布式服务的自动巡检设计

分布式服务的自动巡检设计巡检的目标不是把监控面板塞满,而是帮助值班者在异常发生时判断先看什么、能做什么。分布式服务的故障会跨越入口、依赖、队列和数据层;单项指标变红不一定代表用户受影响,多个信号一起变化才更有解释力。设计检查项…

作者头像 李华