Ask AI
Actions Runner Controller (ARC): do you need it?
Actions Runner Controller (ARC) is GitHub's tool to run self-hosted runners on Kubernetes. It fits big teams that already use Kubernetes. For one Mac or one Linux box, it is more than you need.
What is ARC?
ARC runs GitHub Actions runners on Kubernetes. A runner is the computer that runs your job. Kubernetes is a system that runs many small app boxes, called containers, across many computers.
- GitHub makes ARC. The code is at actions/actions-runner-controller.
- You install it with Helm charts, an app installer for Kubernetes.
- Runner scale sets add runners when jobs wait. They take them away when there is no work.
- Each runner is a pod, one small box that runs one job and is then removed.
When is ARC a good fit?
ARC is a good fit when you already run Kubernetes.
- Your team runs a Kubernetes cluster, a group of computers that work as one.
- You need lots of Linux runners at once.
- Someone can run and fix the cluster.
For teams like this, the GitHub Actions Runner Controller is a good tool.
When is ARC too much?
ARC is too much when you have just a few machines.
- You have one Mac mini or one Linux box.
- You are a small team with no one to run Kubernetes.
- You build iOS or Mac apps. Kubernetes can't run macOS, so ARC can't run Mac jobs.
Then a plain self-hosted runner, a computer you own, is simpler.
ARC vs Codemany
The big difference: ARC needs Kubernetes, and Codemany does not.
| What | ARC | Codemany |
|---|---|---|
| Needs Kubernetes | Yes | No |
| Mac jobs | No | Yes, on Apple silicon |
| Setup | Helm charts on a cluster | An app on a Mac, or one command on Linux |
| Fresh runner per job | Yes, one pod per job | Yes, wiped after each job |
| Cost | Free; you pay for the cluster | $20/month for 2 machines, 14 days free |
With Codemany, you change one workflow line: runs-on: [self-hosted, codemany]. Keep self-hosted runners off public repos. Runner security says why.
Questions
What is Actions Runner Controller?
It is GitHub's Kubernetes tool for self-hosted runners. It adds and removes runners as jobs come and go.
Does ARC support macOS runners?
No. ARC runs Linux containers, and Kubernetes can't run macOS. For Mac jobs, use a Mac as your runner.
Do I need Kubernetes for self-hosted runners?
No. Any Mac or Linux computer you own can be a runner. You need Kubernetes only for ARC.
Is Actions Runner Controller free?
Yes, the software is free. You still pay for the cluster it runs on.
Related guides
Read next: self-hosted runners, a self-hosted runner on Linux and single-use runners.