如何为GitHub Actions添加更多本地运行器?
如何为GitHub组织添加多个自托管运行器
你遇到的问题很典型——同一个目录下已经存在第一个运行器的配置文件(.runner),所以config.sh会默认你是要重新配置现有运行器,而非新增一个。要并行运行多个自托管运行器,每个运行器都需要独立的工作目录,具体操作步骤如下:
步骤1:为第二个运行器创建独立目录
首先,在你的服务器上新建一个和第一个运行器不同的目录,比如第一个运行器在~/github-runner-1,那第二个可以建~/github-runner-2:
mkdir ~/github-runner-2 cd ~/github-runner-2
步骤2:重新下载并解压GitHub运行器包
为了确保版本一致(避免兼容性问题),最好在新目录里重新下载对应系统的运行器包(从GitHub组织的「Add runner」页面获取最新下载链接),然后解压:
# 示例(根据你的系统替换链接) curl -o actions-runner-linux-x64-2.310.2.tar.gz -L https://github.com/actions/runner/releases/download/v2.310.2/actions-runner-linux-x64-2.310.2.tar.gz tar xzf ./actions-runner-linux-x64-2.310.2.tar.gz
步骤3:用新Token配置第二个运行器
在新目录下,使用GitHub生成的新Token执行配置命令,这时候就不会触发「已配置」的报错了:
./config.sh --url https://github.com/MYORG --token YOUR_NEW_TOKEN
按照提示完成配置(比如设置运行器名称、标签等,注意名称要和第一个运行器区分开)。
步骤4:启动第二个运行器(可选:设置为系统服务)
配置完成后,你可以直接启动运行器:
./run.sh
如果希望它能后台持续运行并随系统启动,你可以将其注册为系统服务,注意服务名称要和第一个运行器不同:
sudo ./svc.sh install github-runner2 sudo ./svc.sh start
关键注意事项
- 每个运行器必须有独立的工作目录,不能共享同一个目录下的配置文件
- 每次新增运行器时,都需要从GitHub获取新的Token(Token是一次性的,且和运行器绑定)
- 确保服务器资源足够支撑多个运行器并行运行(CPU、内存等)
内容的提问来源于stack exchange,提问作者WoJ
相关产品推荐
相关产品推荐

