GitLab Runner is the open source project that is used to run your jobs and send the results back to GitLab. It is used in conjunction with GitLab CI, the open-source continuous integration service included with GitLab that coordinates the jobs.
- Allows to run:
- multiple jobs concurrently
- use multiple tokens with multiple server (even per-project)
- limit number of concurrent jobs per-token
- Jobs can be run:
- locally
- using Docker containers
- using Docker containers and executing job over SSH
- using Docker containers with autoscaling on different clouds and virtualization hypervisors
- connecting to remote SSH server
- Is written in Go and distributed as single binary without any other requirements
- Supports Bash, Windows Batch and Windows PowerShell
- Works on GNU/Linux, OS X and Windows (pretty much anywhere you can run Docker)
- Allows to customize the job running environment
- Automatic configuration reload without restart
- Easy to use setup with support for Docker, Docker-SSH, Parallels or SSH running environments
- Enables caching of Docker containers
- Easy installation as a service for GNU/Linux, OSX and Windows
- Embedded Prometheus metrics HTTP server
/InstallDir
- Installation directory. If the Gitlab Runner is already installed, its current directory will be used. To install to a new directory, uninstall it first./Service
- Install as a service. If value is not specified system account will be used. If value is specified it is in the form ofUsername:Password
. The installer will create that user if it doesn't exist, add it to local administrators group, enable ServiceLogonRight and disable password expiration. Example:/Service:gitlab-runner:P@ssw0rd
. Can't be used withAutologon
parameter/Autologon
- Use autologon feature of Windows. Can't be used withService
parameter. Username and password must be provided. Example:/Autologon:gitlab-runner:P@ssw0rd
.
- The script
register_example.ps1
is provided along the executable which can be used to quickly register runner non-interactively. If you want to use it, rename it toregister.ps1
and set desired environment variables. - Autologon vs Service: Services do not have access to all Windows features and some scripts, particularly those that depend on GUI, are not usable.