如何使用 Docker 在 Windows 上快速建立並還原自訂系統環境

如何使用 Docker 在 Windows 上快速建立並還原自訂系統環境

目錄

最近我遇到了一個需求,需要在 Windows 上安裝不同的軟體,之後又希望能迅速地將系統還原到原始狀態。雖然 Windows 內建的 Sandbox 功能能夠實現快速還原,但它無法讓我自訂那個“原始狀態”的具體內容。而傳統的虛擬機軟體如 VMWare 或 VirtualBox,雖然提供了客製化的靈活性,但還原過程卻相對耗時。這時,我想到了使用 Docker,因為 Docker 能夠讓我快速建立、刪除並還原到一個客製化的原始狀態。

在一番搜尋之後,我發現了一個名為 dockurr 的專案,它提供了適用於 Windows 的 Docker Image,讓我能夠在 Docker 容器中運行 Windows。這個專案提供了兩種版本的 Windows Docker Image:一個是針對 x86 架構的版本,另一個則是為 ARM 架構設計的。更吸引人的是,這些 Image 支援桌面應用程式,我只需透過網頁瀏覽器,就能遠端連線到 Windows 的桌面環境。而且,安裝過程既快速又方便。

這項發現為我解決了在快速還原和客製化需求之間的矛盾,讓我在工作流程上更加高效。

安裝 Docker

首先,確保您的系統已安裝 Docker。Docker 支持多平台,但本文建議在 Linux 系統上操作,並且需要安裝 KVM 。Windows 用戶可以透過 WSL2 來使用 Docker。安裝 Docker 的詳細步驟,請參考 Docker 官方文件

系統需求

  • 最低記憶體:4GB
  • 最低 CPU 核心數:2
  • 建議記憶體:8GB 以上
  • 建議 CPU 核心數:4 以上

安裝 Windows Docker Image

dockurr 專案提供了 Windows 的 Docker Image,支持 x86 和 ARM 架構,並且支持桌面應用程式。您可以透過以下命令來安裝 Windows Docker Image:

# x86 版本
docker run -it --rm --name windows -p 8006:8006 --device=/dev/kvm --cap-add NET_ADMIN --stop-timeout 120 dockurr/windows

# ARM 版本
docker run -it --rm --name windows -p 8006:8006 --device=/dev/kvm --cap-add NET_ADMIN --stop-timeout 120 dockurr/windows-arm

安裝完成後,您可以透過網頁瀏覽器訪問 port 8006 來連線到 Windows 的桌面。

使用 docker-compose 進行客製化

為了更方便地管理和客製化 Windows 容器,建議使用 docker-compose。以下是一個 docker-compose.yml 的範例:

version: "3"
services:
  windows:
    image: dockurr/windows
    container_name: windows
    devices:
      - /dev/kvm
    cap_add:
      - NET_ADMIN
    ports:
      - 8006:8006
      - 3389:3389/tcp
      - 3389:3389/udp
    environment:
      - RAM_SIZE=8G
      - CPU_CORES=4
      - DISK_SIZE=64G
    volumes:
      - /path/to/windows:/storage
    stop_grace_period: 2m
    restart: on-failure

透過 docker-compose up -d 命令,即可建立並啟動 Windows 容器。

客製化 Windows Docker Image

為了滿足特定的需求,您可能需要在 Windows 容器中安裝特定的軟體或進行設定。完成這些設定後,您可以透過以下步驟來創建一個客製化的 Windows Docker Image:

  1. 停止 Windows 容器:docker stop windows
  2. 創建一個新的 Docker Image:docker commit windows windows-custom:latest
  3. 匯出新的 Docker Image:docker save windows-custom:latest -o windows-custom.tar
  4. 匯入 Docker Image:docker load -i windows-custom.tar

docker-compose.yml 中的 image 標籤改為新創建的 Image 名稱後,再次使用 docker-compose up -d 啟動容器。

提高 WSL2 資源配置

若您使用 WSL2,可以通過在 C:\Users\使用者名稱 目錄下創建一個 .wslconfig 檔案來提高資源配置:

[wsl2]
processors = 6 # CPU 核心數
memory = 12GB # 最大內存

修改配置後,請重啟 WSL2:wsl --shutdown

透過上述步驟,您可以輕鬆地建立、客製化並管理 Windows 的 Docker 容器,滿足快速部署和還原的需求。

comments powered by Disqus

相關文章

ImageMagick:圖片處理的神奇工具

ImageMagick:圖片處理的神奇工具

ImageMagick 是一款開源的圖片處理工具,提供了豐富的功能來處理圖片大小、格式和色彩等。此外,它還配備了命令列工具,方便用戶進行批次處理圖片。本篇文章將記

閱讀更多
使用 OpenSSH 替沒有固定 IP 的本地主機 (WSL2) 建立反向 TCP 遠端通道 (Ngrok 免費替代)

使用 OpenSSH 替沒有固定 IP 的本地主機 (WSL2) 建立反向 TCP 遠端通道 (Ngrok 免費替代)

若我們希望將本地主機的服務,例如 ssh 伺服器供外部連線,但我們又沒有固定 IP 時,我們可以使用 OpenSSH 建立反向 TCP 遠端通道,讓外部主機可以透過這個通道連線到

閱讀更多
小米水離子吹風機 H500:女性的福音 - 冷熱風交替

小米水離子吹風機 H500:女性的福音 - 冷熱風交替

家中的吹風機壞掉後,我開始尋找一款能夠提升生活質感的吹風機。在這次的探索中,我發現了一款名為小米水離子吹風機 H500 的產品。這款吹風機不僅具有獨特

閱讀更多