Types de runners
- Shared runners — Disponibles pour tous les projets de l'instance GitLab
- Group runners — Disponibles pour tous les projets d'un groupe
- Specific runners — Dedies a un projet specifique
Installation du runner
# Sur Ubuntu/Debian
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh | sudo bash
sudo apt install gitlab-runner
# Sur CentOS/RHEL
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash
sudo yum install gitlab-runner
# Via Docker
docker run -d --name gitlab-runner --restart always \
-v /srv/gitlab-runner/config:/etc/gitlab-runner \
-v /var/run/docker.sock:/var/run/docker.sock \
gitlab/gitlab-runner:latest
Enregistrement
# Enregistrement interactif
sudo gitlab-runner register
# Enregistrement non-interactif
sudo gitlab-runner register \
--non-interactive \
--url "https://gitlab.example.com/" \
--registration-token "TOKEN" \
--executor "docker" \
--docker-image "alpine:latest" \
--description "runner-docker-01" \
--tag-list "docker,linux" \
--run-untagged="true" \
--locked="false"
Tags et selection de runner
# Dans .gitlab-ci.yml
build:
tags:
- docker
- linux
script: make build
deploy-prod:
tags:
- deploy
- production
script: ./deploy.sh
Bonne pratique : Utilisez des tags pour orienter les jobs vers les runners adaptes (ex: gpu, docker, deploy, windows).