docker中运行windows【dockurr/windows】

没有实体物理机器的系统,没必要尝试,会很卡,启动的docker-compose文件也不一样

原文链接:github地址

前置条件

环境

  • 系统:win11 专业版 23H2
  • 软件:Docker v20.10.13、docker-compose

工具

工具包:百度云盘
工具包中主要包含:

  • dockurr/windows的镜像
  • win7的iso文件
  • win7的中文语言安装包
    在这里插入图片描述

安装步骤

一、加载dockurr/windows的镜像

docker load -i windows.tar 

二、准备文件

1.我的文件路径:C:/docker/windows/win7
2.将iso的文件,放在 C:/docker/windows/win7
3.回到C:/docker/windows下,创建启动的docker-compose文件,docker-compose.yml

services:
  windows:
    image: dockurr/windows
    container_name: windows
    devices:
      - /dev/kvm
    cap_add:
      - NET_ADMIN
    ports:
      - 8006:8006
      - 13389:3389/tcp
      - 13389:3389/udp
    stop_grace_period: 2m
    volumes:
      # 数据挂载
      - ./win7/storage:/storage
      # 文件共享
      - ./win7/data:/data
      - ./win7/win7x64.iso:/custom.iso

三、启动

  1. 在 C:/docker/windows打开命令行界面,执行以下命令
docker-compose up -d
  1. 时间较长,耐心等待安装

四、连接方式

方式一:浏览器访问

  在本机上访问http://127.0.0.1:8006

方式二:远程访问【这个是专业版才有的功能】

在本机上按住 win+r ,输入mstsc

在这里插入图片描述

点击Docker图标

在这里插入图片描述

再点击箭头图标,进入系统

在这里插入图片描述
在这里插入图片描述
上面的是已经汉化过的系统,下面进行汉化流程

五、将英文系统转中文

  1. 将之前的exe文件,放入C:/docker/windows/win7/data/
  2. 打开文件夹
    在这里插入图片描述
  3. 点击网络
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  4. exe运行完成之后,打开控制面板
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  5. 点击“应用”后,可能会重启。重启完了之后,就会是中文了。

疑问及注意事项

1.为啥不使用中文的安装包?

  因为中文的安装包会出现下面的这个问题,在github上没有看到具体的解决办法,只看到提问题的人一大堆,我试过了win10、win11的中文安装包都会有这个问题,所以还不如直接装英文系统,再安装中文语言包,即可

BdsDxe: failed to load Boot0002 "UEFI QEMU QEMU HARDDISK " from PciRoot(0x0)/Pci(0xA,0x0)/Scsi(0x0,0x0): Not Found

2.如何在虚拟机上 linux 上运行,docker-compose如下;不建议弄,很卡

version: "3"

services:

  windows:
    image: dockurr/windows
    container_name: windows
    environment:
      KVM: "N"
    # devices:
      # - /dev/kvm
    cap_add:
      - NET_ADMIN
    ports:
      - 8006:8006
      - 13389:3389/tcp
      - 13389:3389/udp
    stop_grace_period: 2m
    volumes:
      # 数据挂载
      - ./win7/storage:/storage
      # 文件共享
      - ./win7/data:/data
      - ./win7/win7x64.iso:/custom.iso

3. 如果需要下载其他镜像,配置如下:

在这里插入图片描述
在这里插入图片描述

4. 如果要修改机器的其他配置:CPU、内存,硬盘大小

environment:
  # 内存大小
  RAM_SIZE: "8G"
  # CPU核数
  CPU_CORES: "4"
  # 硬盘大小
  DISK_SIZE: "256G"

5. 给 Windows 容器分配静态IP

在这里插入图片描述

6. 原文链接

github地址

Docker 是 PaaS 提供商 dotCloud 开源的一个基于 LXC 的高级容器引擎,源代码托管在 Github 上, 基于go语言并遵从Apache2.0协议开源。 Docker自2013年以来非常火热,无论是从 github 上的代码活跃度,还是Redhat在RHEL6.5中集成对Docker的支持, 就连 Google 的 Compute Engine 也支持 docker 在其之上运行。 一款开源软件能否在商业上成功,很大程度上依赖三件事 - 成功的 user case(用例), 活跃的社区和一个好故事。 dotCloud 自家的 PaaS 产品建立在docker之上,长期维护且有大量的用户,社区也十分活跃,接下来我们看看docker的故事。 环境管理复杂 - 从各种OS到各种中间件到各种app, 一款产品能够成功作为开发者需要关心的东西太多,且难于管理,这个问题几乎在所有现代IT相关行业都需要面对。 云计算时代的到来 - AWS的成功, 引导开发者将应用转移到 cloud 上, 解决了硬件管理的问题,然而中间件相关的问题依然存在 (所以openstack HEAT和 AWS cloudformation 都着力解决这个问题)。开发者思 路变化提供了可能性。 虚拟化手段的变化 - cloud 时代采用标配硬件来降低成本,采用虚拟化手段来满足用户按需使用的需求以及保证可用性和隔离性。然而无论是KVM还是Xen在 docker 看来,都在浪费资源,因为用户需要的是高效运行环境而非OS, GuestOS既浪费资源又难于管理, 更加轻量级的LXC更加灵活和快速 LXC的移动性 - LXC在 linux 2.6 的 kernel 里就已经存在了,但是其设计之初并非为云计算考虑的,缺少标准化的描述手段和容器的可迁移性,决定其构建出的环境难于迁移和标准化管理(相对于KVM之类image和snapshot的概念)。docker 就在这个问题上做出实质性的革新。这是docker最独特的地方。 VM技术和容器技术对比 VM技术和容器技术对比 面对上述几个问题,docker设想是交付运行环境如同海运,OS如同一个货轮,每一个在OS基础上的软件都如同一个集装箱,用户可以通过标准化手段自由组装运行环境,同时集装箱的内容可以由用户自定义,也可以由专业人员制造。这样,交付一个软件,就是一系列标准化组件的集合的交付,如同乐高积木,用户只需要选择合适的积木组合,并且在最顶端署上自己的名字(最后个标准化组件是用户的app)。这也就是基于docker的PaaS产品的原型
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值