如果你有一台小主机,这可能是最好的 Windows 安装方式,从 XP 到 Windows 11,应有尽有

如果你有一台小主机,只要能安装 Docker,打开 KVM 虚拟化,就能随手安装一台 Windows 操作系统,随用随抛,从 XP 到 Windows 11,再到 arm Windows、macOS,应有尽有。

甚至,你可以用这台 Windows 来给主机刷 BIOS。是的,这大概是小主机里极少数的还需要 Windows 的场景 😂

如果你有一台小主机,这可能是最好的 Windows 安装方式,从 XP 到 Windows 11,应有尽有 1

小主机就是那种尺寸很小、功耗很低的设备,一般用来当旁路由、NAS、影音服务器。基本上不会用来装 Windows,毕竟没啥用啊。

但是,如果你想,那就可以。

先检测 KVM 虚拟化

sudo apt install cpu-checker
sudo kvm-ok

如果在小主机上运行了 kvm-ok 没有出现 not support 字样,那么恭喜你,可以继续了。

Docker 容器内的 Windows

这个项目就叫 Windows,自身大小只有129.7MB,不带系统镜像。但是它会从微软官方下载镜像,非激活版本,无任何版权材料,可放心食用。

(上面这句话的意思是需要用户自行解决激活 Windows 的事情)

然后就是经典的 Docker 命令:

docker run -it --rm --name windows -p 8006:8006 -p 3389:3389/tcp -p 3389:3389/udp --device=/dev/kvm --device=/dev/net/tun --cap-add NET_ADMIN -v "${PWD:-.}/windows:/storage" --stop-timeout 120 dockurr/windows

(想要后台运行,就把上面的 --rm 换成 -d

只需要以上一行,就可以打开浏览器访问 http://127.0.0.1:8006/ 查看安装进度了,默认安装 Windows 11 Pro

如果你有一台小主机,这可能是最好的 Windows 安装方式,从 XP 到 Windows 11,应有尽有 2

整个安装过程将完全自动,最终你会直接看到桌面:

如果你有一台小主机,这可能是最好的 Windows 安装方式,从 XP 到 Windows 11,应有尽有 3

如果你想安装其他操作系统,只需要在上面的命令行,添加 -e VERSION="xp" 就可以了。

以下是支持的操作系统,看到 Windows XP 只有 600MB,真好:

Value Version Size
11 Windows 11 Pro 5.4 GB
11l Windows 11 LTSC 4.7 GB
11e Windows 11 Enterprise 5.3 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 6.7 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

docker-compose.yml

下面是拥有参数的 docker-compose.yml 文件,按需删减,然后 docker-composeup -d 运行即可:

services:
  windows:
    image: dockurr/windows
    container_name: windows
    environment:
      CPU_CORES: "4"  #更改CPU核心
      RAM_SIZE: "8G"  #更改内存大小
      VERSION: "11"   #更改操作系统
      DISK_SIZE: "64" #更改磁盘的大小
      USERNAME: "appinn"  #配置用户名
      PASSWORD: "com"     #配置密码
      LANGUAGE: "Chinese" #更改系统语言
      DHCP: "Y"           #自动获取IP地址
      # VERSION: "https://example.com/win.iso"  #自定义系统镜像(下载)
      # MANUAL: "Y"       #手动安装
      # DISK2_SIZE: "64G" #创建磁盘
      # ARGUMENTS: "-device usb-host,vendorid=0x1234,productid=0x1234" #直通USB
    devices:
      - /dev/kvm
      - /dev/net/tun
      - /dev/vhost-net    #自动获取IP地址
      # - /dev/sdb:/disk1 #直通磁盘
      # - /dev/bus/usb    #直通USB
    device_cgroup_rules:  #自动获取IP地址
      - 'c *:* rwm'       #自动获取IP地址
    cap_add:
      - NET_ADMIN
    ports:
      - 8006:8006
      - 3389:3389/tcp
      - 3389:3389/udp
    volumes:
      - ./windows:/storage        #与主机共享文件
      # - ./example.iso:/boot.iso #自定义系统镜像(本地)
      # - ./example2:/storage2    #创建磁盘
    restart: always
    stop_grace_period: 2m

使用 RDP 远程控制

可以使用任何 RDP 客户端,比如微软自己的 Windows App 客户端进行连接,默认使用用户名 Docker 和密码 admin 。

甚至,还有 ARM Windows、macOS

但这是另外两个项目了:windows-armmacos

最后问题来了,你有小主机吗?


原文:https://www.appinn.com/windows-inside-a-docker-container/

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片