Gitea Actions "no runner available" / no runner registered in CI
A queued Gitea Actions job has no act_runner to pick it up. Either no runner ever registered against the instance, or every registered runner is busy or offline. Register an act_runner with a valid token and confirm it shows as Idle.
What this error means
A job stays in "Waiting" indefinitely and the run page shows no runner assigned. The instance Actions settings list zero online runners, or the ones present never go Idle.
This job is waiting for a runner from 'ubuntu-latest' to come online.
No runner available for the job.Common causes
No act_runner is registered against the instance
Actions is enabled but you never ran act_runner register, so the instance has nothing to hand the job to.
The registered runner is offline or perpetually busy
The runner process crashed, lost its connection, or is saturated, so no idle runner exists to claim the queued job.
How to fix it
Register an act_runner with an instance token
- In Gitea, open Site Administration (or the repo/org Actions settings) and copy the registration token.
- Run
act_runner registerpointing at the instance URL with that token. - Start the runner and confirm it appears as Idle under Runners.
act_runner register --no-interactive \
--instance https://gitea.example.com \
--token <REGISTRATION_TOKEN> \
--name ci-runner-1 \
--labels ubuntu-latest:docker://node:20-bookworm
act_runner daemonRestart a dead runner and watch it reconnect
If a runner was registered but shows offline, restart the daemon and verify it re-registers and returns to Idle in the Runners list.
systemctl restart act_runner
# or, if run directly:
act_runner daemon --config config.yamlHow to prevent it
- Run the act_runner daemon under a supervisor (systemd) so it restarts on crash.
- Keep at least one Idle runner whose labels cover every runs-on you use.
- Alert on the Runners page showing zero online runners.