除了 VMware,virtualbox 意外,还有其他什么创建一个独立环境的工具吗
比较喜欢折腾一些新东西,但是这些东西对系统的配置要求可能不同,这就会导致又需要重新配置环境,这不是关键,关键是可能会干扰日常使用的环境
比如我在 github 上找了一个项目,配置完成后死活编译不过去,卡在一个地方不动,但是开了一个新的虚拟机配置一个新环境就编译通过了。
但是采用这种虚拟环境,不知道对物理机的 cpu 利用率高不高,编译速度会不会断崖式下跌。
比如 chromium 的编译,我在物理机上都需要编译长达 4 个小时,虚拟机会不会消耗远大于 4 小时的时间,
还有一种情况就是,虚拟机中会不会存在和真实物理机的差异,导致编译异常或者失败的情况。
有一个想法是双系统,但是双系统切换系统不太方便,而且装多个系统也比较麻烦。
买个 minipc 随便换系统
没法持久化啊
qemu 一块独立的硬盘直通, 效率应该还可以吧
GitHub action
nix-shell? nixos.wiki/wiki/Development_environment_with_nix-shell
不是,你这不是说的就是 docker 吗?
起个 docker 进 docker 里编译呗
要么容器,要么虚拟机呗
VMware 这种虚拟机不会有很大的性能开销,可能是 4 小时多一些,但是不会是远大于四小时。具体拿个小一些的项目编译一下测试也行。
如果楼主用的是 Linux, 那么 lxc 完全够用了,Ubuntu 还封装了一个 lxd 作为 Web 前端
vagrant ,支持 virtualbox vm ,或者就用 docker 起 container
wsl2,不做限制,吃满宿主机资源
Ubuntu 提供的 multipass ,不过只能用 Ubuntu 系统
突然发现,docker 也能安装 windows
qemu/kvm 遥遥领先
最小化性能损失就 容器化吧
暂时还是用 vmware 结合快照使用吧,谢谢各位了
wsl2 并不完全独立,还是会发生交叉的,前几天才碰到过一次,zx 这个库,在存在 wsl 的时候,会默认调用 wsl 里面的 node 跑脚本,我折腾到通宵才查出问题所在。。。
vmware 的 cpu 性能相对宿主机性能损耗很少的
orbstack
你这需求 hyper-V 就行了,别折腾了。
linux 的话直接 kvm 一步到位,cpu hostpassthrough + Pci passthrough ,可以把网卡,显卡都直通给虚拟机用,intel 十代以前核显还能开启 intel gvt-g 让主机和虚拟机共享一个显卡,功耗和性能都最优
这些 vmware 和 virtualbox 都做不到
这个时候就要说到 LXC 了, 我发现这个东西是真的挺好用的, 虽然我目前也不怎么懂
lxd ,除了支持 lxc 容器之外,还支持虚拟机;一站式管理。 通过 lxc shell 登陆各个虚机/容器很方便,镜像丰富,支持 dir/zfs 等各种后端存储,还支持快照。也能在其他机器上远程执行 lxc 指令管理机器。
ghost
PVE
code.visualstudio.com/docs/devcontainers/create-dev-container
Hyper-V
现在的 CPU 硬件虚拟化性能损失很低,主要的性能差距是 IO 。如果你直通磁盘+全额分配 CPU 核心给虚拟机,那性能差异不会很大
宿主?虚拟环境的需求?临时性的 win+win ,可以用 sandbox 。持久化建议 hyper-v ,Windows 下性能较好,但功能偏少。docker desktop 的兼容欠佳。
hyperv 吧,hyperv 有一个好处,就是可以用 Terraform 这样的 iac 工具部署虚拟机
反正就是看看项目,github 的 codespace
windows 的话可以尝试下从 vhdx 启动,和物理机没差别, 想清理环境直接把 vhdx 文件考过去覆盖下又是好汉一条.
linux 下就上 btrfs 吧,做好快照, 比 vhdx 更省事.
vagrant 创建 libvirt 虚拟机
其实没有硬件的话,就 Vmware Workstation 是最方便的,如果有一台不用的 PC 的话,我觉得用 PVE 或者 Vmware Esxi 更合适些,就是不知道会不会碰到你说的编译问题,按理说不会,没测试过。
conda
这场景我熟,开一个虚机就够了,也没必要用 docker 每次重头搭环境,独立环境通过 nix 相关工具维护。
下边是用来创建独立环境的工具,排名不分先后。效果上你可以理解为 conda, 创建一个具备你要的环境的 shell, 不用了退出去就回到日常环境了(易用性上推荐 devbox 和 flox )
devbox
devenv
flox
organist
nix develop
guix shell (p.s. 基于 guix 而非 nix, 文档好但包比较老,不推荐)
ventoy 来启动虚拟机镜像,就是物理机加载虚拟机镜像来运行,实现性能 0 损耗,
感兴趣可以去 ventoy 官方看看文档,我现在就是这么玩的,
主系统 ubuntu,利用 vbox 生成 win11 跟 linux 系统镜像,
然后 grub 加入 ventoy 来启动镜像,这样对主系统实现 0 干扰,因为虚拟机系统只想当一个巨大的文件
docker
正解
github.com/dockur/windows
要 Windows 环境就 HyperV ,要 Linux 环境就 WSL
虚拟机就行了,cpu 开小很小的,个人经验百分之个位数。
虚拟机损耗不大,只要你 CPU 不是太久,支持一些虚拟化特性就可以
前几天是看到这个新闻: news.itsfoss.com/ubuntu-24-04-disappointment/ 心里想不至于吧,Canonical 这么无良了么? 今天验…
当初上头买了 6 个靓号,想着国内的软件和国外的软件分别绑定不同的号码。 然而国外的大部分软件都已经不接受虚拟号码了,国内的很多软件却可以绑定,这样也不错,可以防止被开盒,毕竟…
多年不写前端了,除了直接手写 html + js ,现在前端用啥技术。 就这点需求,上框架不是浪费时间。。。 用 WEBGL ,用 WASM ,用 SVG 。前端技术飞快发…