Use a self-hosted GitHub Actions runner on Linux when you need private network access, faster builds, or free minutes beyond GitHub-hosted limits.
Step 1: Create Runner in GitHub
Go to repo or org Settings → Actions → Runners → New self-hosted runner. Select Linux x64 — GitHub shows download and config commands.

Step 2: Download and Configure
Run the provided commands on your Linux server: download tarball, extract, run ./config.sh --url https://github.com/ORG/REPO --token TOKEN.

Step 3: Run as a systemd Service
Install as service: sudo ./svc.sh install and sudo ./svc.sh start. Update workflow with runs-on: self-hosted to use your runner.

Example workflow snippet
name: Deploy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: self-hosted
steps:
- uses: actions/checkout@v4
- run: ./git-deploy.sh
Related tutorials
Terminal screenshots are original illustrations created for Gnome IT Solutions (blog.gnomeitsolutions.com).