位置:首页 > 技术资讯 > DSH虚拟机插件v0.1.0新增实用功能升级指南

DSH虚拟机插件v0.1.0新增实用功能升级指南

时间:2026-08-21  |  作者:星际追番人  |  阅读:0

DSH虚拟机插件v0.1.0针对环境装崩、文件传输等真实痛点,新增快照回滚、文件传输等功能,补齐“真干活”必备能力。

核心内容:

  • 1. 快照回滚功能:支持快照创建、恢复与删除,环境装崩一键恢复
  • 2. 文件传输与端口转发:实现本地与VM双向数据传输及服务访问
  • 3. 后台任务与生命周期管理:支持长任务后台运行,新增VM启停、状态查询等操作

DSH 虚拟机插件 v0.1.0:终于补齐了那些“真干活”时才需要的功能。

先说明一件事:虚拟机插件刚推出时,我们很清楚它只处于“可用”阶段。

当时它只有创建、执行和删除这三个基本功能。

但真正拿来做实验或跑项目时,问题很快就来了。

  • 环境装崩了怎么办?
  • 代码怎么导入?
  • VM中的服务怎么在本地访问?
  • 长时间运行的任务总超时,能不能放后台持续跑?

这些问题,我们自己开发时也天天遇到。

所以这次 dsh-plugin-vm-sandbox 迭代到 v0.1.0,就是专门冲着这些真实痛点去的。

废话不多说,直接看这次加了什么。

最刚需的几块,这次全给安排了

快照回滚:告别“坏了就删机重来”

以前环境装坏了,只能删了重建。

既浪费时间,也让人心疼。

现在跑实验前先打个快照,翻车后可以一键恢复,跟游戏存档一样爽。

这次新增了四个动作:

  • vm_snapshot 创建
  • vm_snapshot_list 查看
  • vm_restore 恢复
  • vm_snapshot_delete 删除

底层直接用的 OrbStack 官方的 orb clone。

它按需复制,不会傻乎乎地占双倍磁盘空间。

文件传输:代码能进去,日志能出来

vm_upload 和 vm_download,基于 orb push/pull,支持目录递归。

本地代码包可以直接扔进 VM 编译测试。

VM 里的运行日志或构建产物,也能再拉回来慢慢看。

不用再靠复制粘贴折腾了。

生命周期:从创建到删除,中间状态全有了

以前只有 create 和 delete。

中间如果想关机、重启、查状态,根本没门。

现在补了 vm_start、vm_stop、vm_restart、vm_status,想怎么折腾都行。

端口转发:VM 里的服务,本地直接调

VM 里起个 Web 服务或者数据库,怎么在浏览器里看?

这次新增 vm_port_forward。

它基于 OrbStack 的 SSH 通道(ssh MACHINE@orb -N -L),把 VM 端口映射到本地 127.0.0.1。

调试体验跟本地服务没差别。

后台任务:再也不用担心超时中断

vm_exec 跑个编译或者训练任务,会话一断就没了。

现在有 vm_job_submit 提交后台任务。

同时支持 vm_job_list、vm_job_status 查看进度,vm_job_stop 随时停,vm_job_output 拿完整日志。

任务在 VM 里真正后台运行,随你跑多久。

操作审计:出问题了有据可查

vm_audit 会记录谁(sessionId)、什么时候、对哪台机器、做了什么操作、成功还是失败、错误信息是啥。

以后排查问题,不用再靠猜。

共享协作:权限和配额清清楚楚

vm_share 可以把虚拟机共享给其他会话。

它还能区分 exec 和 manage 两种权限级别。

  • exec:执行、传输、端口转发、任务
  • manage:生命周期、网络、快照

同时,vm_unshare 用来取消共享,vm_policy 用来设置配额和回收策略。

谁有权限、能用多少资源、什么时候自动回收,都写得明明白白。

网络策略:公网、内网、隔离,按需配置

vm_network支持public_access(是否允许访问公网)和internal_access(VM之间是否互通)。

同时还提供isolated / isolate_network选项,可遵循OrbStack官方的隔离配置。

在实验环境中,用户可以根据需求灵活选择封闭或互联的网络设置。

自定义资源规格:大项目上高配,小测试省资源

vm_create 现在支持指定 cpus、memory(比如 2G 或 4096MiB)、disk(16G 或 64G)。

编译大型项目就给足资源,轻量测试就配小机器,不浪费。

初始化脚本:创建完自动装好环境

vm_create 新增 init_script(Shell 脚本,自动包装成 cloud-init runcmd)和 cloud_init(完整 cloud-config)。

创建完 Python、Node、Docker 自动装好。

这样就省得每次手动搞环境了。

多机并行执行:一次命令,多台一起跑

vm_exec 加了 machines 数组参数。

现在可以同时对多台虚拟机并发执行同一命令。

做集群实验或一致性检查时,不用再手写循环。

状态查询更详细:一眼看清全局

vm_status 现在返回的信息更多了。

包括 IPv4/IPv6、运行时长、负载、内存和磁盘实时用量、最近的 Shell 执行记录、权限信息、共享情况、快照来源、后台任务和端口转发列表等。

一台机器的全貌,一条命令看清。

以前最头疼的几件事,现在都有了对应解法

  • 装坏环境 → 快照回滚
  • 文件传不进拉不出 → upload/download
  • 只建不管 → start/stop/restart/status 全周期
  • 服务调不了 → 端口转发
  • 长任务超时 → 后台任务管理
  • 共享混乱 → share/unshare/policy
  • 排障没记录 → audit 全程审计

底层原则:能用官方的,绝不自己造

这次所有功能都严格基于 OrbStack 官方能力,不搞黑盒封装。

  • 快照/回滚:orb clone
  • 文件传输:orb push/pull
  • 生命周期:orb start/stop/restart/info
  • 端口转发:ssh MACHINE@orb -N -L
  • 资源规格:orb create --cpus/--memory/--disk
  • 初始化:orb create -c cloud-init
  • 网络隔离:orb create --isolated/--isolate-network

这样既保证稳定性,也方便大家查官方文档深入理解。

工具总数:27 个,覆盖全场景

升级后一共 27 个模型工具,基本覆盖了虚拟机运维的方方面面:

  • vm_list
  • vm_create
  • vm_exec
  • vm_delete
  • vm_status
  • vm_start
  • vm_stop
  • vm_restart
  • vm_snapshot
  • vm_snapshot_list
  • vm_restore
  • vm_snapshot_delete
  • vm_upload
  • vm_download
  • vm_port_forward
  • vm_port_forward_list
  • vm_port_forward_stop
  • vm_job_submit
  • vm_job_list
  • vm_job_status
  • vm_job_stop
  • vm_job_output
  • vm_audit
  • vm_share
  • vm_unshare
  • vm_policy
  • vm_network

可靠么?我们做了两层验证

  • npm run verify:校验所有工具的注册信息、参数 schema、语法是否合法。
  • npm run smoke:集成冒烟测试,会自动创建临时虚拟机,完整跑一遍核心链路——创建、文件传输、快照回滚、端口转发、后台任务、网络策略、共享/取消共享、审计、并行执行,全部通过才算过。

目前冒烟是绿的。

后续还能玩出什么花?

v0.1.0 把基础运维能力补齐了。

后面还能折腾的方向其实不少。

比如定时任务、模板市场、资源监控曲线、审计日志导出,这些都在 roadmap 上。

欢迎大伙儿下载试用。

也特别期待你在 GitHub Issues 里聊聊你的使用场景和槽点。

我们是真的想把这个插件做成大家日常顺手、离不开的工具。

免责声明:文中图文均来自网络,如有侵权请联系删除,心愿游戏发布此文仅为传递信息,不代表心愿游戏认同其观点或证实其描述。

相关文章

更多

精选合集

更多

大家都在玩

热门话题

大家都在看

更多