Self-Hosted GitHub Actions Runner on Linux

github actions runner linux linux-github-runner.png

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.

create self-hosted github actions runner linux
Step 1: Create Runner in GitHub

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.

github actions runner config.sh linux setup
Step 2: Download and Configure

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.

github actions runner systemd service linux
Step 3: Run as a systemd Service

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).