比较喜欢折腾一些新东西,但是这些东西对系统的配置要求可能不同,这就会导致又需要重新配置环境,这不是关键,关键是可能会干扰日常使用的环境
比如我在 github 上找了一个项目,配置完成后死活编译不过去,卡在一个地方不动,但是开了一个新的虚拟机配置一个新环境就编译通过了。
但是采用这种虚拟环境,不知道对物理机的 cpu 利用率高不高,编译速度会不会断崖式下跌。
比如 chromium 的编译,我在物理机上都需要编译长达 4 个小时,虚拟机会不会消耗远大于 4 小时的时间, 还有一种情况就是,虚拟机中会不会存在和真实物理机的差异,导致编译异常或者失败的情况。
有一个想法是双系统,但是双系统切换系统不太方便,而且装多个系统也比较麻烦。
![]() | 1 ZeekChatCom 302 天前 买个 minipc 随便换系统 |
2 bler OP @ZeekChatCom 没法持久化啊 |
3 ty29022 302 天前 qemu 一块独立的硬盘直通, 效率应该还可以吧 |
4 yanxin1111 302 天前 GitHub action |
![]() | 5 Acebiu 302 天前 nix-shell? https://nixos.wiki/wiki/Development_environment_with_nix-shell |
6 HtPM 302 天前 不是,你这不是说的就是 docker 吗? |
7 dbk 302 天前 起个 docker 进 docker 里编译呗 |
8 graydust 302 天前 要么容器,要么虚拟机呗 |
9 Flyingblu 302 天前 VMware 这种虚拟机不会有很大的性能开销,可能是 4 小时多一些,但是不会是远大于四小时。具体拿个小一些的项目编译一下测试也行。 |
10 mahaoqu 302 天前 如果楼主用的是 Linux, 那么 lxc 完全够用了,Ubuntu 还封装了一个 lxd 作为 Web 前端 |
![]() | 11 eraserrain 302 天前 vagrant ,支持 virtualbox vm ,或者就用 docker 起 container |
12 cslive 302 天前 wsl2,不做限制,吃满宿主机资源 |
13 CloveAndCurrant 302 天前 Ubuntu 提供的 multipass ,不过只能用 Ubuntu 系统 |
14 bler OP ![]() 突然发现,docker 也能安装 windows |
15 piero66 302 天前 via Android qemu/kvm 遥遥领先 |
16 WallenHan 302 天前 via Android 最小化性能损失就 容器化吧 |
17 bler OP 暂时还是用 vmware 结合快照使用吧,谢谢各位了 |
![]() | 18 lisxour 302 天前 ![]() @cslive wsl2 并不完全独立,还是会发生交叉的,前几天才碰到过一次,zx 这个库,在存在 wsl 的时候,会默认调用 wsl 里面的 node 跑脚本,我折腾到通宵才查出问题所在。。。 |
19 layxy 302 天前 vmware 的 cpu 性能相对宿主机性能损耗很少的 |
![]() | 20 AlanZ1997 302 天前 orbstack |
21 bytesfold 302 天前 你这需求 hyper-V 就行了,别折腾了。 |
22 AwenWalker 302 天前 linux 的话直接 kvm 一步到位,cpu hostpassthrough + Pci passthrough ,可以把网卡,显卡都直通给虚拟机用,intel 十代以前核显还能开启 intel gvt-g 让主机和虚拟机共享一个显卡,功耗和性能都最优 这些 vmware 和 virtualbox 都做不到 |
![]() | 23 0x5c0f 302 天前 这个时候就要说到 LXC 了, 我发现这个东西是真的挺好用的, 虽然我目前也不怎么懂 |
24 Ggmusic 302 天前 via iPhone lxd ,除了支持 lxc 容器之外,还支持虚拟机;一站式管理。 通过 lxc shell 登陆各个虚机/容器很方便,镜像丰富,支持 dir/zfs 等各种后端存储,还支持快照。也能在其他机器上远程执行 lxc 指令管理机器。 |
25 mumbler 302 天前 ghost |
26 dixin 302 天前 PVE |
![]() | 27 SunsetShimmer 302 天前 via Android |
28 tomclancy 302 天前 via iPhone Hyper-V |
29 Donaldo 302 天前 现在的 CPU 硬件虚拟化性能损失很低,主要的性能差距是 IO 。如果你直通磁盘+全额分配 CPU 核心给虚拟机,那性能差异不会很大 |
30 huangsijun17 302 天前 via Android 宿主?虚拟环境的需求?临时性的 win+win ,可以用 sandbox 。持久化建议 hyper-v ,Windows 下性能较好,但功能偏少。docker desktop 的兼容欠佳。 |
31 fsdrw08 302 天前 via Android hyperv 吧,hyperv 有一个好处,就是可以用 Terraform 这样的 iac 工具部署虚拟机 |
![]() | 32 leconio 302 天前 via iPhone 反正就是看看项目,github 的 codespace |
33 onikage 302 天前 windows 的话可以尝试下从 vhdx 启动,和物理机没差别, 想清理环境直接把 vhdx 文件考过去覆盖下又是好汉一条. linux 下就上 btrfs 吧,做好快照, 比 vhdx 更省事. |
![]() | 34 jayeli 302 天前 vagrant 创建 libvirt 虚拟机 |
![]() | 35 WuDiHaiTai 302 天前 其实没有硬件的话,就 Vmware Workstation 是最方便的,如果有一台不用的 PC 的话,我觉得用 PVE 或者 Vmware Esxi 更合适些,就是不知道会不会碰到你说的编译问题,按理说不会,没测试过。 |
![]() | 36 TimCoke 301 天前 conda |
![]() | 37 coldle 301 天前 via Android 这场景我熟,开一个虚机就够了,也没必要用 docker 每次重头搭环境,独立环境通过 nix 相关工具维护。 下边是用来创建独立环境的工具,排名不分先后。效果上你可以理解为 conda, 创建一个具备你要的环境的 shell, 不用了退出去就回到日常环境了(易用性上推荐 devbox 和 flox ) devbox devenv flox organist nix develop guix shell (p.s. 基于 guix 而非 nix, 文档好但包比较老,不推荐) |
![]() | 38 0superx0 301 天前 ventoy 来启动虚拟机镜像,就是物理机加载虚拟机镜像来运行,实现性能 0 损耗, 感兴趣可以去 ventoy 官方看看文档,我现在就是这么玩的, 主系统 ubuntu,利用 vbox 生成 win11 跟 linux 系统镜像, 然后 grub 加入 ventoy 来启动镜像,这样对主系统实现 0 干扰,因为虚拟机系统只想当一个巨大的文件 |
![]() | 39 isSamle 301 天前 docker |
![]() | 41 isSamle 301 天前 |
42 qqqyh 301 天前 要 Windows 环境就 HyperV ,要 Linux 环境就 WSL |
![]() | 43 decemberpei 300 天前 via iPhone 虚拟机就行了,cpu 开小很小的,个人经验百分之个位数。 |
44 dayeye2006199 300 天前 via Android 虚拟机损耗不大,只要你 CPU 不是太久,支持一些虚拟化特性就可以 |
45 prosgtsr 300 天前 via iPhone pve ,里面制作好 cloud-init 的镜像,需要的时候可以用这个镜像生成一个或者多个虚拟机 |
46 panda1001 299 天前 via Android 安装 pve 开启 kvm ,维护一些编译镜像 |
47 capric 299 天前 @bler docker+qemu+kvm 装 windows, macOS 。https://github.com/dockur/windows ,https://github.com/dockur/macos |
48 zhangeric 299 天前 买个小主机上 pve 嘛,可以装各种虚拟机还有 lxd. |