Skip to content

GitHub Actions Runner

The runner is the application that runs a job from a GitHub Actions workflow. It is used by GitHub Actions in the hosted virtual environments, or you can self-host the runner in your own environment.

Self-hosted runner

Self-hosted Runner란 Github Actions에서 사용자가 지정하는 로컬 컴퓨팅 자원으로 빌드를 수행하도록 설정하는 기능입니다. 주로 배포작업이 많아 배포가 지체되거나 서버 비용이 부담되는 경우 유용한 기능입니다.

Github Actions을 사용하고자 하는 저장소에서 "Settings - Actions - Runners"로 이동한 다음 "New self-hosted runner" 버튼을 클릭.

x64 기준 다음과 같이 설치하라 한다:

# Create a folder
$ mkdir actions-runner && cd actions-runner
# Download the latest runner package
$ curl -o actions-runner-linux-x64-2.336.0.tar.gz -L https://github.com/actions/runner/releases/download/v2.336.0/actions-runner-linux-x64-2.336.0.tar.gz
# Optional: Validate the hash
$ echo "04cf0be1aff4c3ec3554466c39124ca250e3effd8873bb7e8d68535aa9505d5d  actions-runner-linux-x64-2.336.0.tar.gz" | shasum -a 256 -c
# Extract the installer
$ tar xzf ./actions-runner-linux-x64-2.336.0.tar.gz

Configure:

# Create the runner and start the configuration experience
$ ./config.sh --url https://github.com/XXXX/YYYYY --token ZZZZ

로그 출력:

--------------------------------------------------------------------------------
|        ____ _ _   _   _       _          _        _   _                      |
|       / ___(_) |_| | | |_   _| |__      / \   ___| |_(_) ___  _ __  ___      |
|      | |  _| | __| |_| | | | | '_ \    / _ \ / __| __| |/ _ \| '_ \/ __|     |
|      | |_| | | |_|  _  | |_| | |_) |  / ___ \ (__| |_| | (_) | | | \__ \     |
|       \____|_|\__|_| |_|\__,_|_.__/  /_/   \_\___|\__|_|\___/|_| |_|___/     |
|                                                                              |
|                       Self-hosted runner registration                        |
|                                                                              |
--------------------------------------------------------------------------------

# Authentication


√ Connected to GitHub

# Runner Registration

Enter the name of the runner group to add this runner to: [press Enter for Default] 

Enter the name of runner: [press Enter for spark-9234] 

This runner will have the following labels: 'self-hosted', 'Linux', 'ARM64' 
Enter any additional labels (ex. label-1,label-2): [press Enter to skip] 

√ Runner successfully added

# Runner settings

Enter name of work folder: [press Enter for _work] 

√ Settings Saved.

실행:

$ ./run.sh

출력:

√ Connected to GitHub

Current runner version: '2.336.0'
2026-08-10 00:13:58Z: Listening for Jobs

Using your self-hosted runner:

# Use this YAML in your workflow file for each job
runs-on: self-hosted

서비스로 등록 (재부팅 후 자동 시작)

sudo ./svc.sh install $USER
sudo ./svc.sh start
sudo ./svc.sh status

서비스로 등록 해제 (재부팅 후 자동 시작)

sudo ./svc.sh stop
sudo ./svc.sh uninstall
./config.sh remove --token <제거용_토큰>

See also

Favorite site