Um runner auto-hospedado te dá CI de custo fixo com caches quentes — sem cobrança por minuto, sua toolchain, sua máquina. Este é o guia de configuração mínimo; para saber por que a auto-hospedagem ganha dos minutos hospedados pelo GitHub e os detalhes de jobs Docker, veja o guia completo e o caso de uso VPS para GitHub Actions.
1. Crie um usuário não-root (o runner recusa root)
adduser --disabled-password --gecos "" runner
su - runner
2. Baixe o runner
No GitHub: Settings → Actions → Runners → New self-hosted runner → Linux, o que te dá o download exato e um token de uso único. Depois:
mkdir actions-runner && cd actions-runner
curl -o actions-runner-linux-x64.tar.gz -L \
https://github.com/actions/runner/releases/latest/download/actions-runner-linux-x64.tar.gz
tar xzf actions-runner-linux-x64.tar.gz
3. Registre-o com seu repo
./config.sh --url https://github.com/YOUR_ORG/YOUR_REPO --token YOUR_TOKEN
4. Instale como serviço (sobrevive a reinícios)
Não execute ./run.sh num terminal — instale-o:
sudo ./svc.sh install runner
sudo ./svc.sh start
sudo ./svc.sh status
O runner agora aparece como Idle na interface do GitHub e pega os jobs que o têm como alvo.
5. Use-o a partir de um workflow
jobs:
build:
runs-on: self-hosted
steps:
- uses: actions/checkout@v4
- run: make build && make test
Jobs Docker (opcional)
Instale o Docker uma vez, e os workflows podem construir imagens com o cache de camadas persistindo entre execuções:
sudo apt install -y docker.io
sudo usermod -aG docker runner
Veja instalar Docker num VPS. Dimensionamento: Small (US$ 8/mês) é confortável para a maioria do CI; suba de nível para compilação pesada. Root em cerca de um minuto, sem KYC, pagamento em cripto.
Comentários
Nenhum comentário ainda. Seja o primeiro.