You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

VSTS代理安装至C盘、指定其他盘工作目录及空间配置问询

VSTS代理配置问题解答

嗨,我来给你详细拆解这两个VSTS代理的配置需求,之前帮不少团队处理过这类磁盘优化的场景,步骤都很清晰:

1. 将VSTS代理安装在C盘,同时指定其他磁盘作为工作目录

这个需求很常见,核心是把代理的程序安装目录工作目录分开,操作分两种情况:

新代理首次配置

  • 先下载VSTS代理压缩包,解压到C盘的目标路径(比如C:\vsts-agent)——这个就是代理核心程序的安装位置。
  • 以管理员身份打开PowerShell,进入C盘的代理目录,执行命令:.\config.cmd 启动配置向导。
  • 跟着向导完成账户关联、代理池选择等步骤,当出现 Enter work folder (press Enter to accept default _work) 的提示时,输入你想要的其他磁盘路径(比如D:\vsts-agent-work),按回车确认即可。
  • 后续所有构建、发布生成的临时文件、缓存都会自动存在你指定的D盘目录,代理程序本身仍留在C盘。

已配置代理修改工作目录

  • 先停止代理服务:在代理目录的PowerShell窗口执行 .\agent.exe stop
  • 打开代理目录下的 settings.json 文件,找到 workFolder 字段,修改为新的路径(注意转义反斜杠,比如"workFolder": "D:\\vsts-agent-work"
  • 重启代理服务:.\agent.exe start

2. 强制回收空间或限制VSTS代理占用X GB存储空间

代理的空间占用主要来自_work文件夹里的构建缓存和临时文件,下面是几种实用的处理方式:

手动强制清理

  • 直接在代理目录的PowerShell窗口执行命令:.\agent.exe cleanup,这个命令会自动清理旧的构建缓存、临时文件,保留最近的若干构建记录(具体数量由代理的保留策略决定)。
  • 如果需要彻底清理,也可以手动删除_work文件夹下的子目录,但注意不要删除正在运行的构建对应的目录(通常是带有当前构建编号的文件夹)。

自动清理与存储空间限制

  • 设置工作目录大小上限:打开代理目录的settings.json,添加maxWorkFolderSize字段,值为你想要限制的字节数。比如要限制为10GB,就填写"maxWorkFolderSize": 10737418240(1GB=1024×1024×1024字节)。保存后重启代理,当工作目录超过这个大小,代理会自动清理旧文件。
  • 配置构建保留策略:在settings.json里添加或修改retentionPolicy字段,比如:
    "retentionPolicy": {
      "daysToKeep": 7,
      "maxNumberOfBuilds": 10
    }
    
    这样代理会自动删除7天前的构建文件,或者保留最多10个构建的缓存,哪个条件先触发就执行哪个。
  • 构建级自动清理:在你的VSTS构建/发布定义中,找到「选项」→「清理」,勾选「在构建前清理工作目录」或「在构建后清理」,这样每次构建完成后都会自动清理临时文件,避免空间持续占用。

内容的提问来源于stack exchange,提问作者4c74356b41

火山引擎 最新活动