是否有任何 os 虚拟化而无需安装完整的 OS(需要多个类似的虚拟机)?
Is there any os virtualization without having to install a full OS (needed multiple similar vms)?
我想要一个单独的虚拟化 OS 环境(最好是 Windows,但 Linux 也很受欢迎)但是 运行 在非常小的 RAM 上 运行 一个机器人应用程序。
我已经尝试过 Hyper-V(有磁盘差异)和 VMware(有 linked/instant 克隆)和 Virtualbox 和 qemu 但到目前为止他们需要完整的 OS 安装并且它可以占用这么多 space .
基本上我只需要多个类似的环境(接近 100 个)而没有大硬盘 space 我 运行 本地网络文件夹中的所有应用程序。
(类似于多个虚拟机 运行ning 在一个 vhd 下,但我不想占用那么多硬盘 spaces)
我试过使用一个定制的 Lubuntu livecd 和 WINPE live cd(Gandalf 的 WINPE 7)在多个 Hyper-V 虚拟机上启动。他们启动得很好,但 Gandalf 的 WINPE 不是完整的 windows 并且需要高 RAM 使用率,而在 Linux 方面我不能 运行 我的 windows 脚本 + 应用程序虽然在 WINE 下很好Linux 内存管理好多了,如果需要的话,我仍然可以使用像 Damn Small 这样小得多的发行版 Linux。
我检查了 Microsoft 的 App-V,但它只是虚拟化了应用程序,没有设置新的独立环境。我需要一个带有自己的鼠标指针的新环境,但需要非常小的 RAM,最好只用于 运行 连接机器人和应用程序。
谢谢。
我已经尝试过 FreeBSD Jail、LXC、LXD,但无法按照我想要的方式进行(拥有一台 PC 和多个用户,但占地面积最小)。
但是,我很高兴我找到了解决方案并想分享它。
For Windows host machine + Linux guest
Enable Hyper-V in Windows (if supported) or download VirtualBox
Install Docker for Windows
Install RealVNC (or any other VNC client)
Download (pull) or create any linux docker image with desktop
environment + VNC (optional: wine, winetricks, playonlinux for running windows apps + cimb-utils [it is for smb sharing network folder])
In powershell deploy multiple container using same image + assign each
different vnc port, for example :
For VNC + Samba network sharing + vncpassword
- docker run -it --user 0 -d -p 5900:5900 -e VNC_PW=passwd --privileged --cap-add SYS_ADMIN --cap-add DAC_READ_SEARCH --security-opt seccomp=unconfined ubuntu
For only VNC without vncpassword (depends on container)
docker run -d -p 5900:5900 abrahamb/lubuntu-vnc
docker run -d -p 5901:5900 abrahamb/lubuntu-vnc
docker run -d -p 5902:5900 abrahamb/lubuntu-vnc
etc
Open RealVNC and setup a connection to these addresses; for example :
localhost:5900
localhost:5901
localhost:5902
- etc
Each ports will lead to separate containerised desktops
这样,您将拥有一个用于部署多个容器的基础映像(例如让一台计算机同时拥有多个用户 运行),只需要最少的 RAM 使用和磁盘大小。
另一种方法是在多个 Hyper-V 虚拟机中启动基本实时 iso。但是,它们是 RAM 密集型的,只能部署几个单独的环境。
更多信息+调查结果:
Docker 实际上有点类似于 LXC、LXD 和 FreeBSD Jails,因为它们都是容器化镜像。我相信如果我足够努力,我可以在 LXD 中进行类似的设置。 FreeBSD Jails 可能也是一个不错的选择。
但是,我没有进一步尝试,因为我找不到足够的关于 jails 设置的信息。我找不到任何解释如何设置的 Youtube 视频,只有一些 articles/blog 但仍然太令人沮丧,因为我没有足够的时间进一步研究。
LXD/LXC 可以配置为虚拟化桌面,但不是我想要的,因为那意味着我必须 dual-boot/have Ubuntu vm.
Docker 最近刚刚实施 Windows 容器,但基本图像是无 GUI 的。然而,在 Linux 方面,有相当多的可用图像已经配置了最小的桌面环境。
此外,使用 Docker,我不需要 运行 Ubuntu/FreeBSD 的 VM 来设置 lxd/lxc/jails 或双启动 Linux/FreeBSD。另外,Docker是跨平台(可以在Windows/Linux/MacOs中使用)。
tldr; Docker 太棒了。
我想要一个单独的虚拟化 OS 环境(最好是 Windows,但 Linux 也很受欢迎)但是 运行 在非常小的 RAM 上 运行 一个机器人应用程序。 我已经尝试过 Hyper-V(有磁盘差异)和 VMware(有 linked/instant 克隆)和 Virtualbox 和 qemu 但到目前为止他们需要完整的 OS 安装并且它可以占用这么多 space .
基本上我只需要多个类似的环境(接近 100 个)而没有大硬盘 space 我 运行 本地网络文件夹中的所有应用程序。 (类似于多个虚拟机 运行ning 在一个 vhd 下,但我不想占用那么多硬盘 spaces)
我试过使用一个定制的 Lubuntu livecd 和 WINPE live cd(Gandalf 的 WINPE 7)在多个 Hyper-V 虚拟机上启动。他们启动得很好,但 Gandalf 的 WINPE 不是完整的 windows 并且需要高 RAM 使用率,而在 Linux 方面我不能 运行 我的 windows 脚本 + 应用程序虽然在 WINE 下很好Linux 内存管理好多了,如果需要的话,我仍然可以使用像 Damn Small 这样小得多的发行版 Linux。
我检查了 Microsoft 的 App-V,但它只是虚拟化了应用程序,没有设置新的独立环境。我需要一个带有自己的鼠标指针的新环境,但需要非常小的 RAM,最好只用于 运行 连接机器人和应用程序。
谢谢。
我已经尝试过 FreeBSD Jail、LXC、LXD,但无法按照我想要的方式进行(拥有一台 PC 和多个用户,但占地面积最小)。
但是,我很高兴我找到了解决方案并想分享它。
For Windows host machine + Linux guest
Enable Hyper-V in Windows (if supported) or download VirtualBox
Install Docker for Windows
Install RealVNC (or any other VNC client)
Download (pull) or create any linux docker image with desktop environment + VNC (optional: wine, winetricks, playonlinux for running windows apps + cimb-utils [it is for smb sharing network folder])
In powershell deploy multiple container using same image + assign each different vnc port, for example :
For VNC + Samba network sharing + vncpassword
- docker run -it --user 0 -d -p 5900:5900 -e VNC_PW=passwd --privileged --cap-add SYS_ADMIN --cap-add DAC_READ_SEARCH --security-opt seccomp=unconfined ubuntu
For only VNC without vncpassword (depends on container)
docker run -d -p 5900:5900 abrahamb/lubuntu-vnc
docker run -d -p 5901:5900 abrahamb/lubuntu-vnc
docker run -d -p 5902:5900 abrahamb/lubuntu-vnc
etc
Open RealVNC and setup a connection to these addresses; for example :
localhost:5900
localhost:5901
localhost:5902
- etc
Each ports will lead to separate containerised desktops
这样,您将拥有一个用于部署多个容器的基础映像(例如让一台计算机同时拥有多个用户 运行),只需要最少的 RAM 使用和磁盘大小。 另一种方法是在多个 Hyper-V 虚拟机中启动基本实时 iso。但是,它们是 RAM 密集型的,只能部署几个单独的环境。
更多信息+调查结果:
Docker 实际上有点类似于 LXC、LXD 和 FreeBSD Jails,因为它们都是容器化镜像。我相信如果我足够努力,我可以在 LXD 中进行类似的设置。 FreeBSD Jails 可能也是一个不错的选择。
但是,我没有进一步尝试,因为我找不到足够的关于 jails 设置的信息。我找不到任何解释如何设置的 Youtube 视频,只有一些 articles/blog 但仍然太令人沮丧,因为我没有足够的时间进一步研究。
LXD/LXC 可以配置为虚拟化桌面,但不是我想要的,因为那意味着我必须 dual-boot/have Ubuntu vm.
Docker 最近刚刚实施 Windows 容器,但基本图像是无 GUI 的。然而,在 Linux 方面,有相当多的可用图像已经配置了最小的桌面环境。
此外,使用 Docker,我不需要 运行 Ubuntu/FreeBSD 的 VM 来设置 lxd/lxc/jails 或双启动 Linux/FreeBSD。另外,Docker是跨平台(可以在Windows/Linux/MacOs中使用)。
tldr; Docker 太棒了。