Azure DevOps Windows自托管代理--runAsAutoLogon配置失效问题咨询
Azure DevOps Windows自托管代理开机启动问题解答
问题核心:参数作用与预期不符
--runAsAutoLogon参数的实际作用和你预期的完全不同——它并非让代理在系统启动(未登录锁屏状态)时运行,而是配置代理在指定用户自动登录系统后启动,本质还是依赖用户登录会话,只是帮你自动完成登录步骤。所以你遇到的“锁屏时代理未上线、登录后才正常运行”的现象,是这个参数的正常表现,并非操作错误。
正确实现系统启动即运行的方案
要让代理在系统启动(无需用户登录)时运行,必须将代理配置为Windows服务,具体操作如下:
- 若之前已用
--runAsAutoLogon配置过代理,先执行清理命令:
.\config.cmd remove
- 重新配置代理,使用
--runAsService参数替代--runAsAutoLogon:
.\config.cmd --unattended --agent '<agent-name>' --pool '<agent-pool-name>' --url '<azure-dev-ops-organization-url>' --auth 'PAT' --token '<token>' --runAsService --windowsLogonAccount '<domain\user-name>' --windowsLogonPassword '<windows-password>'
- 配置完成后,代理会以Windows服务形式存在,默认设置为自动启动,系统开机后无需用户登录即可运行,代理会直接在Azure DevOps中上线。
补充注意事项
- 确保用于运行服务的用户账户拥有本地管理员权限,以及Azure DevOps代理池的相关操作权限。
- 若配置后服务无法正常启动,可检查Windows事件日志中的服务启动报错信息,排查权限或账户配置问题。
内容的提问来源于stack exchange,提问作者lordebasta
相关产品推荐
相关产品推荐

