X黑手网
X黑手网
X黑手网

手把手教你:把Windows系统装进Docker里进行远程桌面

一、docker-windows介绍

虽然说电脑可以实现双系统,但是有时候啊,像一些堡垒机或者vpn啥的,或者需要windows环境做测试的,你总不能老是切换系统吧,很麻烦,而且用习惯了linux,总是想鼓捣着可以用ubuntu搞定万物,反正有docker嘛,万物皆可docker,于是今天我查了一下资料,找到了docker镜像的windows,这样工作起来就方便多了。

二、本次实践介绍

  1. 本次实践简介

本次实践部署环境为个人测试环境

  1. 本地环境规划

本次实践环境规划:下载镜像dockurr/windows:latest,通过docker-cli或者docker compose启动容器

三,安装Docker

curl -sSL https://get.docker.com/ | sh

四,检查CPU是否支持虚拟化技术

在CentOS 7上检查是否支持KVM的方法是通过检查CPU是否支持硬件虚拟化,以及是否已经加载了KVM内核模块。

egrep -c '(vmx|svm)' /proc/cpuinfo
如果输出大于0,则表示CPU支持Intel VT-x或AMD-V,这是硬件虚拟化的基础。

检查KVM内核模块是否已加载:

lsmod | grep kvm
如果已经加载,你会看到kvm_intel(对于Intel CPU)或kvm_amd(对于AMD CPU)。

如果上述命令没有输出,或者lsmod命令的输出中没有显示这些模块,你可以尝试手动加载它们:

sudo modprobe kvm
sudo modprobe kvm_intel  # 对于Intel CPU
# 或者
sudo modprobe kvm_amd  # 对于AMD CPU

如果你想要这些模块在系统启动时自动加载,你可以将它们添加到/etc/modules文件中:

echo "kvm" | sudo tee -a /etc/modules
echo "kvm_intel" | sudo tee -a /etc/modules  # 对于Intel CPU
# 或者
echo "kvm_amd" | sudo tee -a /etc/modules  # 对于AMD CPU

以上步骤可以帮助你确认CentOS 7是否支持KVM以及是否已经正确配置了KVM环境。

五,下载Windows Docker镜像

下载镜像

docker pull dockurr/windows

你也可以本地构建

git clone https://github.com/dockur/windows.git
cd windows
docker build -t dockurr/windows .

几项技术

•qemus/qemu-docker[7],在容器中使用 QEMU,能够提供接近本机速度的虚拟机的网络、IO 速度等。
•christgau/wsdd[8],让容器中的 Windows 能够出现在局域网中的其他设备的共享设备中。(Windows 10 的 1511 版本后,默认开始禁用 SMBv1,NetBIOS 设备发现功能失效,导致其他设备不能对其进行服务发现)。
•qemus/virtiso[9],精简到 27MB 的 KVM/QEMU Virtio 驱动程序,能够让 Windows 在 Docker 环境中正常使用。
•krallin/tini[10],正确启动 Docker 中 QEMU,以及确保进程异常能够被正确处理,或正确的终止容器进程。
部署安装

六,部署安装

docker-compose.yml

完整创建过程:

1.使用docker-cli启动一个windows的容器。

–VERSION决定你启动容器后下载的系统是什么;
–RAM_SIZE决定你给这个系统的运存是多少;
–CPU_CORES决定你给这个系统的cpu是多少;
–DISK_SIZE决定了你给这个系统的磁盘大小是多少;
–/opt/windows/storage:/storage这里的是你挂载的目录;
–其他的可以按照我的参数设置即可

docker run -it \
-e VERSION=”win10″ \
-e RAM_SIZE=”8G” \
-e CPU_CORES=”4″ \
-e DISK_SIZE=”50G” \
-e MANUAL=”N” \
-p 8006:8006 \
-p 3389:3389/tcp \
-p 3389:3389/udp \
-v /usrlocal/docker-win/win:/storage \
–device=/dev/kvm \
–cap-add NET_ADMIN \
dockurr/windows:latest\

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
version: "3"
services:
  windows:
    image: dockurr/windows:latest
    container_name: windows
    stop_grace_period: 2m
    restart: unless-stopped
    environment:
      VERSION: "win10"
      RAM_SIZE: "8G"
      CPU_CORES: "4"
      DISK_SIZE: "50G"
      MANUAL: "N"
    devices:
      - /dev/kvm
    cap_add:
      - NET_ADMIN
    ports:
      - 8006:8006
      - 3389:3389/tcp
      - 3389:3389/udp
    volumes:
      - /use/local/docker-win/win:/storage

创建windows

docker-compose up -d

方法-1,是使用浏览器访问容器所在主机的 IP地址:端口

image

方法-2,用 RDP 远程工具,写上IP和端口3389,用户名为:docker,密码为空。

image

 

 

© 版权声明
THE END
喜欢就支持一下吧
点赞5赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容