GitHub Actions任务等待空闲self-hosted Windows Runner拾取超时求助
排查自托管GitHub Actions Runner无法拾取任务的方法
- 核对标签大小写:GitHub Runner标签是大小写敏感的,你的任务请求标签是
self-hosted, windows,但Runner配置的是self-hosted, Windows(首字母大写),这会直接导致匹配失败。务必保证YAML里的标签和Runner上的标签完全一致,包括大小写细节。 - 确认Runner的仓库归属:检查这三台Runner是否确实注册在当前仓库下,而非组织或其他仓库。如果是组织级Runner,还要确认当前仓库有权限调用组织内的自托管Runner。
- 查看Runner本地日志:在Runner安装目录的
_diag文件夹里,找到最新的日志文件,搜索是否有任务接收相关的错误——比如认证失败、GitHub API访问超时/被拦截这类信息,能直接定位问题。 - 检查仓库Webhook状态:进入仓库的Settings -> Webhooks,查看最近的交付记录,确认Webhook是否正常触发、没有被拒绝。如果Webhook没推送任务通知,Runner自然收不到任务。
- 重新注册Runner:如果上述检查都没问题,试试卸载现有Runner,用仓库新生成的注册令牌重新注册一次。有时候旧的注册令牌过期或者关联状态异常,会导致Runner无法接收任务。
- 排查服务器网络限制:确认Runner所在服务器能正常访问GitHub相关域名(比如
api.github.com、github.com),防火墙、安全组没有拦截出站请求;如果用了代理,也要确认代理配置能正常连接GitHub。 - 检查仓库Actions权限:进入仓库的Settings -> Actions -> General,确认没有禁用自托管Runner的使用权限,也没有设置任务执行的限制规则。
内容的提问来源于stack exchange,提问作者TJR
相关产品推荐
相关产品推荐

