如何设置自托管的 GitHub Runner
开始我们自己的 GitHub runner 需要的条件:
- PAT 令牌
- 组织名称
- 含有 github runner 的容器
- Docker 主机
让我们一步步地设置它。对于含有 github runner 的容器,我们将使用 github-runner。
获取 PAT 令牌
- 访问 Personal Access Tokens 页面并点击 Generate new token。
- 输入 Token 名称,选择 Resource owner(你组织的名称)和 Expiration(出于安全原因,最好不要使用无限时间)。
- 点击 Organization permissions 右侧的箭头。
- 为 Self-hosted runners 选择
Access: Read and write
。 - 现在点击 Generate token。
- 将生成的令牌(它以
github_pat_...
开头)复制到一个安全的地方。
获取组织名称
我是多个组织的所有者。例如,我将为 fasthelp-ai 组织使用自托管 runner。
启动我们的 runner
可能需要更改 docker.sock 的权限,因为我们的 runner 需要访问 docker.sock。可以通过在终端使用以下命令来实现。在 debian/ubuntu 的情况下:
shell
sudo chmod 666 /var/run/docker.sock
选项 1. Docker 单行命令
现在,我们可以使用我们的 PAT 令牌、组织名称和可选名称。
shell
docker run --rm \
-e ORG=fasthelp-ai \
-e ACCESS_TOKEN=github_pat_... \
-e NAME=hetzner-1 \
-v /var/run/docker.sock:/var/run/docker.sock \
ghcr.io/romnovi/github-runner:main
选项 2. Docker compose
shell
services:
runner:
image: ghcr.io/romnovi/github-runner:main
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- ORG=fasthelp-ai
- ACCESS_TOKEN=github_pat_...
- NAME=hetzner-1
检查
启动 runner 后,我们可以在组织的设置页面检查其状态:Actions -> Runners。