Bitbucket Self-Hosted Runner Offline - Jobs Stuck Queued
Your self-hosted runner dropped offline - the process stopped, the host lost network, or its credentials expired - so steps targeting it sit queued with nothing to run them.
What this error means
Steps that target the self-hosted runner stay queued indefinitely. The Runners page shows the runner as offline or disabled. Restarting the runner clears the backlog, which points at a transient connectivity or process issue.
Runner "linux-build-01" is OFFLINE.
Waiting for a runner to become available...Common causes
The runner process stopped or the host lost network
A crashed/stopped runner container, a rebooted host, or a network blip disconnects the runner from Bitbucket. It cannot accept jobs while disconnected.
Expired credentials or outdated runner
A rotated OAuth token or an outdated runner version can prevent the runner from re-registering, so it never comes back online.
How to fix it
Restart the runner and confirm it reconnects
# on the runner host
docker restart <runner-container>
# or systemd-managed
systemctl restart bitbucket-runner
# then confirm it shows ONLINE on the Runners pageCheck connectivity, credentials, and version
- Verify the host can reach Bitbucket over the network/proxy.
- Re-create the runner if its OAuth credentials were revoked or rotated.
- Update to a current runner image so registration is not rejected.
How to prevent it
- Run runners under a supervisor (systemd/Docker restart policy) so they self-recover.
- Keep more than one runner online for redundancy.
- Alert on runner offline status and keep the runner version current.