You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Azure CI管道在指定公司内网PC(LB-1)上运行命令

实现Azure DevOps CI仅在特定内网PC执行命令的方案

要满足你的需求,核心是把LB-1配置为Azure DevOps的自托管代理,再在CI管道中锁定仅使用该代理运行任务。具体操作如下:

1. 将LB-1配置为自托管代理

Azure DevOps的官方托管代理无法访问公司内网专用机器,必须通过自托管代理把LB-1接入你的DevOps组织:

  • 登录Azure DevOps组织后台,进入项目设置 > 代理池,新建一个专属代理池(比如命名为Internal-Machines)
  • 在LB-1上,打开刚创建的代理池页面,点击下载代理,获取对应系统的安装包
  • 解压安装包后运行配置脚本(Windows下为config.cmd),按提示完成配置:
    • 填入DevOps组织的URL
    • 输入具备代理池管理权限的个人访问令牌(PAT)
    • 选择刚才创建的Internal-Machines代理池
    • 设置代理名称为LB-1(和你的设备标识保持一致,方便后续精准指定)
    • 配置完成后启动代理服务,建议设置为开机自动启动,确保LB-1开机时代理始终在线

2. 修改CI管道YAML,锁定LB-1执行任务

基于你提供的初始管道代码,添加代理池和代理名称的约束,确保任务仅在LB-1上运行:

# Starter pipeline
# Start with a minimal pipeline that you can customize to build and deploy your code.

trigger:
- main

# 指定使用自托管代理池,并要求代理名称必须为LB-1
pool:
  name: Internal-Machines
  demands:
    - Agent.Name -equals LB-1

steps:
- script: |
    cd Downloads
    echo > sample.txt
    echo "Folder created successfully."
  displayName: 'Create Folder in Downloads'

注意事项

  • pool.name必须和你创建的自托管代理池名称完全匹配
  • demands中的Agent.Name对应LB-1上配置的代理名称,确保只有这台机器会触发任务
  • 确保LB-1始终开机且代理服务正常运行,否则管道会处于等待代理在线的状态
  • 检查LB-1的权限:执行脚本的代理账户需要拥有Downloads目录的读写权限,避免命令执行失败

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 10:50:12