[GitHub Actions] Self Hosted Runner on Kubernetes


動かす

事前準備

  • Ubuntu 24.04LTS
  • rancher/k3s
  • helm
  • GitHubトークン

Quick-Start Guide | K3s

Helm | Helm のインストール

インストールから起動まで

公式ドキュメントをコピペ&一部修正するだけで良い。

  1. helmでリポジトリを追加
  2. helmでインストール
  3. kubectlでデプロイ

アクション ランナー コントローラーのクイック スタート – GitHub Docs

普段はRunner scale setsのみ常駐する。

ジョブが要求されると、ジョブの数に応じてRunnerが登録される。

参考:古い方

actions-runner-controller/docs/quickstart.md at master · actions/actions-runner-controller (github.com)

指定したリポジトリにRunnerが登録される。
GitHub Actionsから利用するにはrun-onの設定を変えるだけ。

イメージが最適化されていない、つまり、余分なパッケージが含まれる分、インストールし忘れのコマンドも使えたりする。curlなど。

感触

動きとして、ジョブが終了するとクリーンなpodに自動的に入れ替わる。
特に問題はなかった。

当然、GUIでは使えないから、GitHub Actionsのコスト削減ネタかな。