Runners allows you to run builds in Pipelines on your own infrastructure, and you won’t be charged for the build minutes used by your self-hosted runners. The following guides help you configure your operating system with Pipelines to use runners within your repositories.

Supported platforms

Currently, we only support Linux with x64 architecture for the self-hosted runner.

Minimum Requirements

  • A 64-Bit Linux instance with at least 8GB of RAM as a host for the runner.

    • More RAM may be required for builds with 2x-Steps or build services.

  • Docker v19.03 and above - Install Docker

Runners in Bitbucket

You can configure and manage runners at different levels:

  • Repository runners are available on a single repository.

  • Workspace runners can run builds for multiple repositories in a workspace, sharing the same runner across different repositories and teams.

Usage limits

The following are the usage limits or quotas applied to Bitbucket Pipelines Runners:

  • Step build time. Similar to Cloud, there is a maximum build time of 120 minutes per step. To reduce the total run time, we recommend using more parallel steps within your CI/CD workflow.

  • Max available memory. With Runners, you can configure up to 32GB (8x) of memory to run your builds.

  • API rate-limits:

    • Bitbucket rate-limits: Runners are subject to the same API rate-limits described in this document: API request limits.

    • Artifacts/ cache/ log rate-limits: The rate limit is 2000 requests/per minute per runner.

    • Download rate-limit on Docker Hub: Docker Hub has its own rate limits that can affect you. Authenticated users have a better image pull rate so we recommend to login to your docker hub account on a docker host.

  • Total number of steps: You can configure and execute a maximum of 100 steps per pipeline.

  • Step queue time: Steps can be queued for a maximum of 2.5 hours.

  • Total number of runners: You can configure up to 100 runners per workspace and repository.

  • Can’t access the local files on the runner host from a build script: In order to provide isolation and reproducibility, a runner doesn’t provide access directly to the host file system, we recommend using SCP / Rsync, if necessary.

The limits described above are subject to change in the future.

Additional Help