當前位置: 華文世界 > 數位

6.2k+ 如何在 Docker 裏執行 Windows?

2024-03-13數位

大家好,我是開源探索者,持續分享開源計畫,關註技術的最新動態,分享自己的經驗和見解。

萬物皆可 Docker,在 Docker 萊恩裝 Windows,開啟套娃模式。

今天為大家帶來一款創新的開源工具: dockur/windows ,基於 noVNC 和 QEMU 實作,模擬多種不同的硬體平台,為使用者提供一個隔離的環境來執行不同的應用程式和作業系統。允許使用者透過 Web 瀏覽器互動使用 Windows。

dockur/windows 可以讓你在 Docker 容器中執行 Windows,全程自動安裝 Windows,無需復雜的配置。

該計畫剛釋出了兩個月,已在 GitHub 上獲得了 6.2K stars,還有部份 bug 未解決,新版本目前尚在叠代中。

️ 特色

  • 開箱即用,無需復雜配置
  • 支持自訂 CPU/RAM 的數量、磁盤大小
  • 為容器分配單獨的 IP 地址
  • 內建 ISO下載器,自動下載 Windows 版本的 ISO 檔
  • 支持Win7/Win8/Win10/Win11/tiny10等版本
  • 支持使用 Linux KVM 為 Windows 容器提供硬體虛擬化的加速
  • 與主機共享檔、安裝自訂映像
  • 提供 DHCP、自訂 IP 地址、磁盤對映、USB對映等功能
  • 透過 Web 瀏覽器即時檢視和控制 Windows 容器的桌面,無需安裝額外的軟體或外掛程式
  • 程式碼完全開源,不分發任何受版權保護的材料,無任何版權問題,合法合規
  • 目前支持的 Windows 版本

    Value

    Description

    Source

    Transfer

    Size

    win11

    Windows 11 Pro

    Microsoft

    Fast

    6.4 GB

    win10

    Windows 10 Pro

    Microsoft

    Fast

    5.8 GB

    ltsc10

    Windows 10 LTSC

    Microsoft

    Fast

    4.6 GB

    win81

    Windows 8.1 Pro

    Microsoft

    Fast

    4.2 GB

    win7

    Windows 7 SP1

    Bob Pony

    Medium

    3.0 GB

    vista

    Windows Vista SP2

    Bob Pony

    Medium

    3.6 GB

    winxp

    Windows XP SP3

    Bob Pony

    Medium

    0.6 GB

    2022

    Windows Server 2022

    Microsoft

    Fast

    4.7 GB

    2019

    Windows Server 2019

    Microsoft

    Fast

    5.3 GB

    2016

    Windows Server 2016

    Microsoft

    Fast

    6.5 GB

    2012

    Windows Server 2012 R2

    Microsoft

    Fast

    4.3 GB

    2008

    Windows Server 2008 R2

    Microsoft

    Fast

    3.0 GB

    core11

    Tiny 11 Core

    Archive.org

    Slow

    2.1 GB

    tiny11

    Tiny 11

    Archive.org

    Slow

    3.8 GB

    tiny10

    Tiny 10

    Archive.org

    Slow

    3.6 GB

    Docker 部署

    準備環境:

  • Window 10
  • docker 24.0.6
  • docker-compose version 2.22.0
  • 目前小編測試 Win11、Win10 均安裝失敗,有安裝成功的小夥伴私信留言下你的安裝環境,小編觀摩下。

    小編這裏測試在 Win10 上使用 docker 安裝 Win7 系統,具體步驟如下:

    1、在任意非中文目錄建立資料夾 dockur、storage

    mkdir dockurcd dockurmkdir storage

    2、準備一個 Windows7 的 ISO 映像

    下載地址:

    https://dl.bobpony.com/windows/7/en_windows_7_enterprise_with_sp1_x64_dvd_u_677651.iso

    3、將 ISO 映像名稱改為 custom.iso,拷貝到 storage目錄中

    4、在 dockur 目錄建立 docker-compose.yml

    根據實際情況修改 volumes 對映目錄

    version: "3"services: windows: image: dockurr/windows container_name: windows environment: VERSION: "win7" KVM: "N" volumes: - D:/dockur/storage:/storage cap_add: - NET_ADMIN ports: - 8006:8006 - 3389:3389/tcp - 3389:3389/udp stop_grace_period: 2m restart: on-failure

    5、啟動服務

    docker-compose up -d

    6、在瀏覽器存取

    http://localhost:8006

    辨識到本地 Win7 ISO 映像檔

    全自動安裝Windows7

    到這裏就是安裝成功了,可以正常使用

    增加 CPU 或 RAM 的數量

    預設情況下,Win11 的最低要求 2核CPU、4 GB記憶體、 64GB 磁盤空間 。要增加此值和擴容,參考如下配置修改對應的環境變量值:

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

    此外,dockur/windows 提供了DHCP、自訂IP地址、磁盤對映、USB對映、KVM支持等能力。利用 KVM(Kernel-based Virtual Machine)來加速 Windows 的執行。寶子們可參照計畫主頁的操作範例自行嘗試~

    該計畫剛釋出兩個月,還存在不少 bug 尚未解決,機器配置高的寶子可以玩一玩,如在Windows 安裝 docker,在 docker 裏再安裝 Windows,接著再安裝 docker,然後再安裝Windows,開啟套娃模式,看看你的機器能扛到第幾層。目前測試 Win7 和 Win8 都能安裝成功。

    結束語

    在數位時代的浪潮中,有一群人他們不畏艱難,勇攀技術高峰,他們就是開源探索者。

    他們不僅僅是技術的實踐者,更是開源文化的傳播者和推動者。

    在開源的世界裏,沒有絕對的權威,只有共同的合作。