程序聚合 软件案例 脚本开发-Docker VHDX磁盘 压缩脚本

脚本开发-Docker VHDX磁盘 压缩脚本

2026-07-21 03:34:29
行业:安全
载体:爬虫/脚本
技术:Docker、.NET Core

业务和功能介绍

1、立项原因
Docker Desktop 基于 WSL2 的虚拟磁盘文件 docker_data.vhdx 采用动态扩展机制,长期使用后删除镜像、容器等操作不会自动回收已占用空间,导致磁盘文件虚胖(如实际数据仅 3GB 却占用 20GB),造成磁盘空间浪费。本脚本旨在自动化回收“死空间”,解决手动压缩流程繁琐、易出错的问题,释放被无效占用的存储资源。

2、行业场景
适用于 Windows 平台上频繁使用 Docker 进行开发测试的工程师、运维人员,以及 CI/CD 构建机等需要定期清理磁盘的环境。尤其适合 SSD 容量有限的笔记本或云桌面,帮助用户在不重装 Docker 的前提下快速回收空间。

3、功能模块:
脚本为单一 PowerShell 文件,内部划分为五个逻辑模块:

路径交互模块:提供默认路径(%LOCALAPPDATA%\Docker\wsl\disk\docker_data.vhdx)与手动输入自定义路径的交互选择。

前置检查模块:检测管理员权限、VHDX 文件存在性,确保运行环境合法。

WSL 操作模块:执行 wsl --shutdown 关闭实例,挂载/卸载 VHDX 为裸设备。

填零回收模块:在 WSL 内通过 dd 命令对数据分区空闲空间写零,触发 VHDX 的收缩标记。

压缩执行模块:调用 diskpart 的 compact vdisk 指令完成物理压缩,并显示压缩后大小。

4、核心功能
一键完成从关闭 WSL、挂载磁盘、填零、压缩到卸载的全流程自动化,用户仅需以管理员身份运行,按提示选择路径即可,无需记忆复杂命令。

项目实现

1、技术栈
基于 PowerShell 5.0+ 编写,依赖 Windows 内置工具(diskpart、wsl.exe)以及 WSL 发行版中的 dd 命令(BusyBox 提供)。无需额外安装第三方软件。

2、架构
采用线性顺序执行 + 交互式输入,包含异常退出保护(文件不存在、权限不足时提前终止)。

3、实现亮点

通过磁盘大小自动定位数据分区,避免用户手动指定设备名。
智能处理 Windows/Linux 换行符差异,确保传递的路径字符串在 WSL 内被正确解析。
支持路径中的空格和特殊字符,自动去除首尾引号。

4、技术难点

WSL 挂载裸设备时需正确构造命令(wsl --mount --bare),且需等待挂载完成后再执行 dd,需处理异步时序。
diskpart 交互式命令的自动化需通过管道输入,需确保脚本无残留挂载,避免文件锁定。
压缩过程可能因 Docker 服务未完全退出而失败,需在脚本开头强制检测并提示用户退出。

示例图片视频


Gzx 主攻 AI agent 项目
30天前活跃
方向: 人工智能-AI应用开发、后端-Python、
交付率:100.00%
相似推荐
某装备效能评估软件(军工)
本项目面向军工装备效能评估领域,旨在为装备研发、试验及作战运用提供量化评估工具,支撑装备全生命周期决策。软件核心功能涵盖多源数据管理(兼容装备参数、试验数据等多格式导入与标准化处理)、效能指标计算(内置层次分析、模糊综合评判等模型,支持用户自定义评估算法)、可视化分析(通过图表/三维态势图直观呈现装备性能短板)、报告生成(一键输出符合国军标格式的评估文档)。业务流程从“数据接入→模型配置→仿真计算→结果输出”形成闭环,功能路径支持“单装备基础评估→多装备对比分析→作战场景推演”三级递进,满足从技术验证到战术决策的全场景需求。
机器人路径规划-坡口切割机器人
· 智能识别与定位:通过3D视觉扫描工件,自动识别位置、轮廓和零件编号(OCR识别率可达95%以上),即使工件随意摆放也能精准定位,无需专用夹具。 · 自动编程与路径规划:软件能直接读取CAD图纸,自动提取坡口信息,并生成机器人运动轨迹。这彻底改变了过去依靠人工目测“示教编程”的模式,无需操作者具备机器人编程经验。 · 工艺参数智能匹配:内置AI智能工艺库,可根据板材材质、厚度自动匹配切割参数(如火焰/等离子),降低对老师傅经验的依赖,保证工艺一致性。 · 三维仿真与碰撞检测:在离线环境中模拟机器人运动,提前检查干涉、奇异点等问题,避免现场调试时的设备碰撞风险,确保一次切割成功。 · 形变补偿与精度控制:针对板材切割中可能发生的热变形,软件算法可进行实时补偿,确保坡口角度和钝边尺寸的精度,例如钝边误差可控制在±1.5mm以内。 · 数字孪生与生产看板:通过智能看板动态显示设备状态、产量和能耗,实现生产过程的可视化管理,方便工厂进行精细化调度。
MES系统-企业内部应用
传统光电制造企业无统一数字化底座,ERP、MES、OA等系统割裂,数据孤岛严重,无法支撑业务快速扩张。 • 任务:主导全公司数字化架构设计与核心系统0到1建设,统筹内部团队及外部生态资源。 • 成果: o 系统可用性达99.9%,支撑7×24H不间断生产运营; o 生产订单履约周期缩短25%,库存周转率提升20%。
中车株机智慧工会系统
项目名称:中车株机智慧工会系统(工会全生命周期管理平台) 技术栈:JeecgBoot、Spring Boot、、MyBatis-Plus、MySQL、Redis、RabbitMQ、Vue、UniApp、Nginx、Docker 项目角色:核心开发工程师(从0到1全程参与业务调研、设计、开发、测试、部署) 项目描述 系统服务于中车株机公司工会,涵盖流程审批、活动、福利、课程、经费、财务打款、协会管理等7大核心模块,支撑全公司数千名职工在小程序端便捷参与工会活动。系统基于 JeecgBoot 低代码平台,在深度定制的基础上实现复杂审批流、高并发福利秒杀、多端扫码签到及严格的经费管控。
工业能耗优化与设备运维平台-智能能耗
面向工业企业的能耗诊断与设备运维平台,用于把能源采集、异常诊断、节能方案、工单执行和效果核验连接成可追溯的业务闭环。系统提供综合能耗看板、设备与能流关系、基线分析、策略库、告警、节能方案对比、ROI测算、工单执行和M&V效果验证,帮助企业从发现能耗问题进入方案审批、执行与效益跟踪。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服