DockerWindows
在Docker裡運行Windows
安裝和使用
安裝Docker、Docker-Compose、usbutils
1
2
sudo pacman -Syu
sudo pacman -S docker docker-compose usbutils
安裝Remmina
1
flatpak install flathub org.remmina.Remmina
用usbutils找到要給Windows的USB口
先使用usbutils查看未插入USB裝置的狀態
1
lsusb -t
插上USB裝置後再使用一次usbutils來找到有變化的部分。
從圖片中我們可以知道該USB口的bus為2,port為1。
開始寫Compose
到你想放Windows的地方創一個資料夾,進到裡面並開啟終端機。
1
2
3
mkdir storage
mkdir data
nano Docker-Windows.yml
貼上整個yml檔。
詳細配置方法可以在dockur/windows的GitHub找到。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
services:
windows:
image: dockurr/windows
container_name: windows
environment:
VERSION: "<你要的Windows版本>"
GPU: "Y"
USERNAME: "<Windows的使用者名>"
PASSWORD: "<Windows的密碼>"
DISK_SIZE: "<分配的硬碟大小>"
RAM_SIZE: "<分配的記憶體大小>"
CPU_CORES: "<分配的CPU核心數>"
ARGUMENTS: "-device usb-host,hostbus=<用usbutils找到的bus>,hostport=<用usbutils找到的port>"
devices:
- /dev/kvm
- /dev/dri
- /dev/bus/usb
- /dev/net/tun
volumes:
- <資料夾路徑>/storage:/storage
- <資料夾路徑>/data:/data
cap_add:
- NET_ADMIN
ports:
- 3389:3389/tcp
- 3389:3389/udp
stop_grace_period: 2m
啟動Windows
先用一般模式確定運作正常。
1
docker compose -f Docker-Windows.yml up
等待出現 localhost:8086 確定沒問題後Ctrl+C關閉compose。
加入-d參數來讓compose在後台掛起。
1
docker compose -f Docker-Windows.yml up -d
如果要卸除Docker-Windows的Compose
對容器的配置更改時都需要先卸除該容器的Compose。
1
docker compose -f Docker-Windows.yml down
用Remmina連接Windows
進入Remmina後點擊左上角的加號。
選擇RDP後把該填的填好後點Save就好。
之後就可以從Remmina的主畫面快速連接Windows了。
Remmina的暗色主題
右上角設定按鈕 > Preferences > Appearance > 把Prefer dark thems打勾
本文章以 CC BY 4.0 授權