+
25
-

回答

确实存在可用于Docker的免费开源Windows镜像,能够实现远程桌面连接功能,以下为你介绍相关信息:

dockurr/windows镜像

项目概述:这是一个基于Docker的开源项目,借助noVNC和QEMU技术模拟Windows环境,让用户得以便捷地体验Windows系统。

功能特性

开箱即用:用户无需进行复杂设置,就能快速启动并使用完整的Windows桌面环境。

自定义配置:支持对Windows版本、RAM数量、磁盘大小等参数进行自定义,满足不同用户的个性化需求。

多版本支持:提供了Windows 7、Windows 8、Windows 10、Windows 11以及Tiny 10等多个Windows版本供用户选择。

Web界面控制:通过Web浏览器,用户能够实时查看和控制Windows容器的桌面,无需安装额外插件。

ISO下载器:内置ISO下载器,可自动获取所需Windows版本的ISO文件。

硬件加速:支持利用Linux KVM为Windows容器提供硬件虚拟化加速,提升性能。

文件共享:实现了容器与宿主机之间的文件共享。

自定义镜像安装:用户可依据自身需求安装自定义的Windows镜像。

DHCP与IP地址映射:支持DHCP服务,并具备IP地址映射功能。

USB映射:能够将宿主机的USB设备映射到容器中。

使用方式

安装Docker环境:若使用的是Ubuntu系统,可在终端执行命令sudo apt install -y docker.io docker-compose安装Docker。不同系统安装Docker的方式有所差异,具体可参考Docker官方文档。

拉取镜像:执行docker pull dockurr/windows命令拉取镜像。由于容器镜像较大,拉取时间可能较长,且部署镜像会占用较多空间,需预留足够存储空间,防止部署失败。

运行容器

简单运行:执行docker run -it --rm --name windows -p 8006:8006 --device=/dev/kvm --cap-add NET_ADMIN --stop-timeout 120 dockurr/windows 。该命令中,-p 8006:8006将容器内的8006端口映射到宿主机的8006端口;--device=/dev/kvm用于开启KVM硬件加速(前提是系统支持KVM);--cap-add NET_ADMIN赋予容器网络管理权限;--stop-timeout 120设置容器停止时的超时时间为120秒 。

通过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
stop_grace_period: 2m
restart: on-failure
在存放docker-compose.yml文件的目录下,执行docker-compose up -d命令启动容器 。此配置不仅开放了8006端口用于Web界面访问,还将容器的3389端口映射到宿主机,方便通过远程桌面连接 。

访问Windows桌面:服务启动后,在浏览器地址栏输入http://宿主机IP:8006,即可访问Windows桌面。系统安装完成后,也可使用远程桌面客户端连接宿主机IP + 3389端口(默认账号为docker,密码为空)连接到Windows虚拟机 。

其他相关说明

性能方面:因依赖QEMU虚拟化,其运行速度相比直接在物理机或Hyper - V上运行会稍慢。在未开启硬件加速(如KVM)的情况下,性能差距更为显著。

Windows授权问题:虽然项目本身开源,但运行Windows系统仍需遵循微软的授权协议,用户要根据实际情况获取合法的Windows许可证 。

网友回复

我知道答案,我要回答