Gitlab CI Runner 13.11.5

An open source project that is used to run your CI/CD jobs and send the results back to GitLab.
Config Version
7.0.2
Cost per hour*
$0.0018
Cost per month*
$1.28

In this article, we are showing how to easily setup GitLab Runner with Puzl, and why it's cheaper than using Gitlab pipeline minutes.

Recommended minimal configuration
CPU
0.1vCPU
RAM
0.125GB
Optional resources
GPU

Quarter of NVIDIA A100

$0.40 per GPU-hour

Volume

NVMe-based storage

$0.004 per GB-day

You can request any amount of CPU and RAM during the installation process.

About this App
An official guide on how to get started with GitLab CI/CD
Support

Note: Puzl does not offer support for this solution. Please refer to the community support options mentioned above.

Description

GitLab Runner allows you to run GitLab pipelines and returns the results of the pipeline work back to GitLab.

You can even run any application and databases (MySQL, PostgreSQL, Redis, etc.) in your pipelines.

With Puzl you can get your runner in a cloud, ready in just a few clicks and watch your pipelines running within few minutes. You're paying not for infrastructure like in the case with virtual machines, but only for resources actually utilized by a small Docker container with the runner itself and by your working pipelines.

How To Deploy GitLab Runner

Install Runner in your Puzl cloud dashboard

Click the 'Install' button at the top of this page and fill in the form:

  1. Runner Registration Token: go to your GitLab project’s Settings > CI/CD. Expand the General pipelines settings section. Find the Runner token form field and click the Reveal value button.
  2. Tags (e.g. puzl-runner) - comma-separated list of tags associated with the runner, so your runner will run only the jobs it is designed to run. You will need to put these tags in your GitLab project .gitlab-ci.yml file as well.
  3. GitLab URL (e.g. https://gitlab.com) - the GitLab Server URL (with protocol) you want to register the runner against.
  4. RAM, CPU, GPU - you may setup computational resources for your pipelines in the advanced section. It will be default values, which you can rewrite in variables of each particular pipeline. Puzl uses unofficial Gitlab Runner build to ship support of GPU. Therefore, to redefine amount of GPU customize environment variable KUBERNETES_GPU_REQUEST. For other options check official Gitlab Runner documentation.
  5. Volume - optionally you may request Volume. It will be mounted by a path /media/volume_name.

Setup GitLab

Create a .gitlab-ci.yml in the root of your GitLab repository and put tags, specified in the previous step, in the section tags of .gitlab-ci.yml.

build:
tags:
- puzl-runner

Getting started after installing GitLab Runner

Your Runner is all set and is ready to run pipelines automatically.

In the installation form, there are 3 blocks of resources: runner itself, build container and services container.

  1. Runner utilizes resources for the whole time your application is up and running. It requests GitLab for a new jobs.
  2. Build container uses resources only when pipeline is triggered. That is why you will see new Pods created by your Runner whenever pipeline is running. After pipeline finishes, a corresponding Pod will be terminated, and all its resources will be released.
  3. Services container is used to run services like databases and only consumes resources when the service is running.
Relevant Links
How to install your own GitLab Runner to Kubernetes and why it might be better and cheaper than using 400 free cloud pipeline minutes
This app is based on the following software
SoftwareLicense
Gitlab RunnerMIT