Un runner self-hosted ti dà CI a costo fisso con cache calde — nessuna fatturazione al minuto, la tua toolchain, la tua macchina. Questa è la guida di configurazione minima; perché l'auto-hosting batte i minuti ospitati da GitHub e i dettagli sui job Docker, vedi la guida completa e il caso d'uso VPS per GitHub Actions.
1. Crea un utente non-root (il runner rifiuta root)
adduser --disabled-password --gecos "" runner
su - runner
2. Scarica il runner
In GitHub: Settings → Actions → Runners → New self-hosted runner → Linux, che ti dà il download esatto e un token monouso. Poi:
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. Registralo con il tuo repo
./config.sh --url https://github.com/YOUR_ORG/YOUR_REPO --token YOUR_TOKEN
4. Installa come servizio (sopravvive ai riavvii)
Non eseguire ./run.sh in un terminale — installalo:
sudo ./svc.sh install runner
sudo ./svc.sh start
sudo ./svc.sh status
Il runner ora appare come Idle nell'interfaccia GitHub e prende i job che lo puntano.
5. Usalo da un workflow
jobs:
build:
runs-on: self-hosted
steps:
- uses: actions/checkout@v4
- run: make build && make test
Job Docker (opzionale)
Installa Docker una volta, e i workflow possono costruire immagini con la cache dei layer che persiste tra le esecuzioni:
sudo apt install -y docker.io
sudo usermod -aG docker runner
Vedi installare Docker su un VPS. Dimensionamento: Small (8 $/mese) è comodo per la maggior parte dei CI; sali di livello per compilazioni pesanti. Root in circa un minuto, niente KYC, pagamento in cripto.
Commenti
Ancora nessun commento. Sii il primo.