# GitLab Runner

GitLab Runner is an open-source CI/CD (continuous integration/continuous delivery) agent that runs GitLab CI/CD jobs and returns results to your GitLab instance. It is open source and self-hosted, installable on Docker Hub, Kubernetes (Helm) and Unraid.

Canonical page: https://ourlocalhost.com/app/303/gitlab-runner

## Description

GitLab Runner is an open-source CI/CD (continuous integration/continuous delivery) agent that runs GitLab CI/CD jobs and returns results to your GitLab instance. This Docker executor template is for developers and homelab users who want a self-hosted runner that registers automatically after you enter the GitLab URL, registration token, and runner name.

## Platform availability

Available on 2 of 9 platforms: Unraid, Helm.

## Health score

71/100 (Good), based on 3 of 4 factors.
- Maintained: 98 (last commit 51 days ago)
- Popular: 48 (248 GitHub stars)
- Easy to install: 45 (2 install platforms, install notes, Docker image)

## Links

- Docker Hub: https://hub.docker.com/r/gitlab/gitlab-runner
- Kubernetes (Helm): https://artifacthub.io/packages/helm/gitlab/gitlab-runner
- Unraid: https://ca.unraid.net/apps/gitlab-runner-11lj6gr0gw3sh3?q=gitlab-runner
- GitHub: https://github.com/gitlabhq/gitlab-runner
- Documentation: https://docs.gitlab.com
- Official website: https://gitlab.com/gitlab-org/gitlab-runner

## Common questions

### Why does the GitLab Runner service fail to start if the binary is in /usr/local/bin?

Add /usr/local/bin to PATH or install the runner binary in /usr/bin, because the service manager uses PATH to find gitlab-runner.

### Do GitLab and GitLab Runner versions need to be compatible?

Yes, check the GitLab Runner compatibility section for which GitLab CE/EE versions work with each runner version.

### How can I register a runner when the GitLab server uses a self-signed certificate?

Specify the GitLab server certificate file for self-signed certificates during registration to avoid the x509: certificate signed by unknown authority error.

### Should I keep runner auto-registration enabled on a self-hosted GitLab instance?

Disable the auto-registration option for security when self-hosting GitLab.

## Alternatives

- Bitbucket: Offers Git-based code hosting, integrated issue tracking, a project wiki, pull requests, and collaboration tools with support for private o…
- Forgejo: Forgejo is a self-hosted, lightweight Git forge for hosting repositories and managing projects.
- GitHub: Web-based Git hosting service facilitating collaboration, with features like issue tracking, social networking, and wikis for project manag…
- Gitea: Gitea is a lightweight, self-hosted Git service for hosting and managing Git repositories, pull requests, and issues.
- Gogs: Gogs is a self-hosted Git service for hosting code repositories with web interfaces and Git command-line workflows.
- Huly: An all-in-one project management platform (alternative to Linear, Jira, Slack, Notion, Motion)
- Jenkins: Jenkins is a fork of Hudson and is a continuous build system for software projects.
- Launchpad: Launchpad is a collaboration and Bazaar code hosting platform for (primarily open-source) software projects.
- Plane: Plane is an open-source project management tool for tracking issues, running cycles, and managing product roadmaps.
- Radicle: Open source, peer-to-peer collaboration on Git enables decentralized, censorship-resistant code sharing, local-first autonomy, and modular…
- Semaphore: Semaphore is a modern web interface for Ansible that lets homelab users run playbooks, receive failure notifications, and control access to…
- SourceForge: Open source community and software directory offering code hosting, analytics, version control, project management, and access to over 50,0…

---
Source: Our Local Host (https://ourlocalhost.com/app/303/gitlab-runner), the self-hosted and open-source app directory.
