首页 > 其他分享 >docker中安装win系统

docker中安装win系统

时间:2024-06-15 20:12:27浏览次数:10  
标签:windows win apt -- win10 home docker 安装

目录

环境介绍

Ubuntu 24.04 LTS
172.16.186.148/24  NAT
4U/20G/120G

安装docker

# 删除旧版本
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

# 配置 apt 存储库
1、安装配置所需的软件包
sudo apt install ca-certificates curl
2、获取 Docker 存储库的 GPG 密钥
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
3、将 Docker 存储库添加到 apt 源
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

4、安装最新版本docker
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
docker --version

在docker中安装win

rambo@test1:~$ mkdir windows-app/ && cd windows-app/
rambo@test1:~/windows-app$ cat Dockerfile
# 使用 Ubuntu 作为基础镜像
FROM ubuntu:20.04

# 安装必要的软件包
RUN set -x && \
    apt-get update && \
    apt-get install -y qemu-system qemu-kvm libvirt-clients libvirt-daemon-system  virtinst cpu-checker xvfb  bridge-utils x11vnc xdotool

# 复制 Windows ISO 到容器中
COPY win10_21h2.iso  /home/win10_21h2.iso

# 创建虚拟硬盘
RUN qemu-img create -f qcow2 /home/win10.img 30G

# 启动 QEMU 并运行 Windows 安装程序
CMD ["sh", "-c", "\
   Xvfb :1 -screen 0 1024x768x16 & \
   sleep 6 && \
   x11vnc -display :1 -nopw -forever & \
   DISPLAY=:1 xdotool key Return & \
   qemu-system-x86_64 -m 10G -cdrom /home/win10_21h2.iso -boot d -hda /home/win10.img -net nic -net user -vnc :1"]





# 构建镜像
rambo@test1:~/windows-app$ docker build -t windows-vm .
# 运行容器
rambo@test1:~/windows-app$ docker run -itd --rm --privileged -p 5901:5901 windows-vm



其他

# 只启动容器但不运行任何命令
docker run -it --rm --privileged --entrypoint /bin/bash windows-vm

# 进入容器
docker exec -it <容器名>  /bin/bash


在容器中手动运行各个组件:
# 启动 Xvfb
Xvfb :1 -screen 0 1024x768x16 &
sleep 5

# 启动 x11vnc
x11vnc -display :1 -nopw -forever &
sleep 5

# 检查 Xvfb 是否运行正常
DISPLAY=:1 xdotool key Return

# 启动 QEMU
qemu-system-x86_64 -m 10G -cdrom /home/win10_21h2.iso -boot d -hda /home/win10.img -net nic -net user -vnc :1


# 查看vnc端口(默认是5901)
apt install -y net-tools
netstat -anpt

防走丢


QQ群1:905201396
QQ群2:756805267
QQ群3:912567610


标签:windows,win,apt,--,win10,home,docker,安装
From: https://www.cnblogs.com/smlile-you-me/p/18249665

相关文章

  • 探索Docker容器网络
    Docker容器已经成为现代应用部署的核心工具。理解Docker的网络模型对于实现高效、安全的容器化应用至关重要。在这篇博客中,我们将深入探讨Docker的网络架构,并通过一些代码例子来揭示其底层实现。Docker网络模式Docker提供了多种网络模式,每种模式都有其特定的应用场景:Br......
  • CLFS驱动程序(clfs.sys)是Windows操作系统中的一个组件,它提供了日志记录和恢复功能,以增
    clfs.sys是Windows操作系统中的一个系统文件,它是CLFS(CommonLogFileSystem)驱动程序的一部分。CLFS是Windows操作系统中用于管理日志文件的文件系统,它提供了日志记录和恢复功能。CLFS驱动程序(clfs.sys)具有以下功能和作用:日志记录:CLFS可以记录系统的操作、事件和错误等信息到......
  • 植物大战僵尸杂交版V2.1安装教程
    下载链接:https://r0vr8xquwul.feishu.cn/docx/YDzedPsgMo5yEXxukoncUTPFnwd详细图文教程:https://www.yuque.com/zhefengerhuanzaigua/bld6x5/mrnhqr8tkisvxxkc软件介绍植物大战僵尸杂交版游戏中独特的杂交植物更是为游戏增添了不少亮点。这些杂交植物不仅外观独特,而且拥有更......
  • 零基础-零成本搭建个人博客-Hexo-基于windows10
    下载nodejs #1、访问官网:https://nodejs.org/en-下载LTS版本下载后安装下一步、选择安装路径即可、注意要选择addtopath(这是npm下载包的路径)安装hexo安装成功后在cmd中输入npm验证一下:按Win+R键、弹出后输入cmd创建workspace:需要安装hexo下载的nmp包F:\worksp......
  • [隐私计算学习笔记]4——SecretFlow与SecretNote的安装部署
    目录1.SecretFlow介绍2.安装(亲测)2.1运行要求2.2安装方式2.2.1方式一:docker镜像2.2.2方式二:pypi2.2.3方式三:源码安装3.部署3.1前置知识——SecretFlow和Ray3.2 仿真模式——实现快速验证3.2.1单机仿真3.2.2集群仿真3.3 生产模式——实现安全生产4.关......
  • win10安装brother M7650DF打印机驱动怪招
    神州网信win10系统,安装兄弟M7650DF打印机驱动失败,电脑能识别usb信息,就是无法添加打印机,经上网搜索,得出以下解决方案。下载这个压缩包,然后按步骤操作即可!M7650DF/M7650DNFWIN10固件升级说明1.关闭打印机,在电脑上先安装文件夹中Brother_BHL2.exe驱动,完成安装。2.【关键操作】......
  • WPF RenderTargetBitmap DrawingVisual DrawingContext DrawImage DrawRectangle Draw
    usingSystem;usingSystem.Collections.Generic;usingSystem.Globalization;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows;usingSystem.Windows.Controls;usingSystem.Windows.Data;usingSystem.Windows.Documents;......
  • 完美解决“由于找不到msvcp140.dll,vcruntime140_1.dll,msvcp100.dll,msvcr120.dll等导致
    成功解决问题:由于找不到msvcp140.dll,vcruntime140_1.dll,msvcp100.dll,msvcr120.dll,mfc140u.dll,mfc140u.dll等导致的无法继续执行代码。重新安装程序可能会解决此问题。......
  • Docker容器简介
    容器技术容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。开发人员在自己笔记本上创建并测试好的容器,无须任何修改就能够在生产系统的虚拟机、物理服务器或公有云主机上运行。容器由两部分组成:应用程序本身依赖:比如应用程序......
  • docker没外网安装方法
    docker没外网安装方法需要先清理之前docker的依赖,避免影响安装失败1,下载docker的压缩tar包百度云Docker18.06.1地址:https://pan.baidu.com/s/1YdN9z72QutPkHBfLq06H1A密码:dvvh2,解压tar包#解压tar-xvfdocker-18.06.1-ce.tgz#将压缩的全部文件复制到/usr/bincpdoc......