前一阵购入了绿联NAS DX4600+,折腾了一阵docker服务、内网穿透啥的,但是广大用户呼声最高的虚拟机一直也没有上线,真希望可以尽快使用上官方虚拟机服务!
既然这样,大家就走起了曲线救国的路子,通过Docker安装Windows虚拟机。
这里的流程也是使用论坛上大佬分享的方法,结合交流群里大佬的思路,整理的一个方法,非常简单,容易上手!

一、下载镜像

直接使用绿联Docker工具进行镜像拉取,镜像为:dockurr/windows:latest
image-1706540786249

二、下载Windows镜像

下载之后,将文件后缀的.TXT删除,文件名修改为custom.iso,上传至nas的文件目录中,例如我上传到固态存储/vmware/windows/storage目录中。

image-1706539728676

三、SSH登录到绿联NAS

到设备管理-调试功能中,开启远程调试,接收手机验证码后会得到一个登录nas的密码,如下图
image-1706540045382

使用SSH工具,xShell或FinalShell等进行连接,地址为nas的IP地址,端口为922,密码为上面图中的验证码。

从NAS的xftp目录中找到上面目录的位置,复制出来完整的绝对路径,替换到下面命令中
image-1706540299372

docker run -it \\
--name vm-win11 \ 		\*自定义容器名
-e VERSION="win11" \
-e RAM\_SIZE="8G" \	\*最低4G
-e CPU\_CORES="4" \	\*最少2核
-e DISK\_SIZE="256G" \
-e MANUAL="Y" \
-p 8006:8006 \			\*默认Web访问端口
-p 3389:3389/tcp \		\*windows远程服务端口
-p 3389:3389/udp \
-v path/to/windows/storage:/storage \		\*替换 :/storage 前面的路径
--device=/dev/kvm \
--cap-add NET_ADMIN \
dockurr/windows:latest

示例命令(去掉换行和反斜线,编辑成一行,再执行)

docker run -it --name vm-win11 -e VERSION="win11" -e RAM_SIZE="6G" -e CPU_CORES="2" -e DISK_SIZE="128G" -e MANUAL="Y" -p 8006:8006 -p 3389:3389/tcp -p 3389:3389/udp -v /mnt/dm-1/.ugreen_nas/247257/vmware/windows/storage:/storage --device=/dev/kvm --cap-add NET_ADMIN dockurr/windows:latest

直接执行即可。

QQ截图20240129220655

四、Windows安装

浏览器访问nas地址:8006,正常应该可以看到Windows安装界面了。

语言只有English可以选,时区可以选择Chinese。

QQ截图20240129214238

注意1:执行到这一步,需要加载硬盘驱动,必须执行!!!
image-1706541250026

注意2:执行到这一步,需要加载网卡驱动,必须执行!!!
image-1706541374658
image-1706541428597
image-1706541540559

然后给硬盘创建分区(这里我默认只创建一个分区),选中主分区,开始安装
image-1706541603588
QQ截图20240129214934

中途会重启几次,看到windows图标基本就成功了!
测试Edge打开百度正常,说明网卡驱动加载没问题!

QQ截图20240129215122
QQ截图20240129215256
QQ截图20240129215949
QQ截图20240129220043-1706541808291

五、配置远程桌面

进入
Windows的设置,System系统,Remote Desktop远程桌面,开启远程桌面。
QQ截图20240129220340

用自己的电脑远程桌面连接试一下,直接输入nas的IP地址,直接连接,输入安装Windows时配置的用户名和密码,就连接到“虚拟机”了。
QQ截图20240129220429

六、虚拟机中访问NAS文件

NAS 的网络服务中开启Samba,复制Windows的连接地址。
image-1706542078834

在虚拟机的此电脑地址栏中直接粘贴访问即可。
image-1706542206273

为了方便访问,可以添加一个网络位置(不过只能每个存储空间分别挂载)
image-1706542294490
image-1706542373431
image-1706542399907
image-1706542411900
image-1706542422548

关于资源占用

服务刚启动时,CPU资源占用比较高,稳定运行之后就降下来了,但是内存是一直占用的,配置为6G,一直保持6.1G占用。
082fe2e6ad8e2c9c54bd523cb741498

image-1706543289364

踩坑记录

第一次安装分配了2核CPU、4G内存,安装成功后想升到6G内存,于是停了容器,修改了环境变量,重启,这时候会删除旧容器创建新容器,此时Windows就起不来了。

切记,安装成功后只能启停服务,不能修改配置!!!

后续

后续使用中发现这种虚拟机安装方式,容器启动之后大概只能运行一天时间(20多小时),然后就会自动down掉,原因未知,感觉这样使用并不稳定,还是等官方出虚拟机功能吧……

如果有需要可以临时这样使用,使用之前先启动容器,然后远程连接临时使用。