GitLab CE (Community Edition) est la version open-source de GitLab : une forge Git complète, un CI/CD intégré et des outils de sécurité dans une seule plateforme, hébergée sur votre infrastructure. Elle apporte la gestion de dépôts, les merge requests, les pipelines, les runners et un registre de paquets, sans abonnement.
GitLab couvre l'intégralité du cycle de vie DevSecOps de la planification au déploiement. Créé en 2011, le projet est développé par GitLab Inc. (cotée au NASDAQ) et propose trois modes de déploiement : SaaS (gitlab.com), Self-Managed (sur votre infrastructure) et Dedicated (instance isolée gérée par GitLab). La version de référence de cette section est GitLab 19.5.0. En contrepartie de sa richesse fonctionnelle, son empreinte est plus lourde que Gitea ou Forgejo : la documentation de GitLab donne 8 vCPU et 16 Go de RAM pour une installation sur un seul nœud, et accepte 8 Go au minimum dans un environnement contraint.
Guides opérationnels GitLab
Section intitulée « Guides opérationnels GitLab »Cette section est la référence de GitLab self-managed ; le module facultatif de
la formation Administrer une forge Git en reprend une
partie. Ce module est encore en cours de reprise : la zone d'administration, la
ligne de commande, la supervision et le dépannage de GitLab ne sont pas encore
couverts. La présentation donne
l'origine, les éditions, les fonctions et la place de GitLab face aux
alternatives. L'installation pose
le package Omnibus sur Ubuntu ou RHEL jusqu'à la première connexion, et la
configuration initiale
sécurise gitlab.rb : SMTP, inscriptions publiques, SSH.
Les runners ont deux guides : le GitLab Runner
sous Linux, avec l'exécuteur shell ou Docker et le jeton glrt-, puis le
runner sur Kubernetes, déployé
avec Helm. Côté exploitation, la
sauvegarde et la restauration
passent par gitlab-backup, et la mise à jour
suit le chemin officiel entre versions.
Où apprendre GitLab CI/CD ?
Section intitulée « Où apprendre GitLab CI/CD ? »Les pipelines, les runners en usage et l'industrialisation ont leur formation,
séparée de l'administration de l'instance. Les
fondamentaux de GitLab CI/CD mènent
du premier pipeline aux jobs, variables, règles, artifacts et cache. La
vue d'ensemble de la formation présente le
parcours complet jusqu'au pilotage, et ses sections sur l'industrialisation
(templates, pipelines parent-enfant, matrices) et les outils (glab, plumber) en
détaillent les étapes avancées.
GitLab vs les alternatives self-hosted
Section intitulée « GitLab vs les alternatives self-hosted »Le tableau met GitLab CE en regard de Gitea et de Forgejo sur les critères qui pèsent le plus pour un exploitant : ressources demandées, CI/CD, sécurité intégrée, licence et complexité d'exploitation. L'écart de ressources est le premier à regarder avant de choisir.
| Critère | GitLab CE | Gitea | Forgejo |
|---|---|---|---|
| Ressources | 8 vCPU et 16 Go (8 Go au minimum, environnement contraint) | 2 cœurs et 1 Go pour une petite équipe | Aucun minimum publié, à mesurer |
| CI/CD intégré | Oui, GitLab CI | Oui, Gitea Actions | Oui, Forgejo Actions |
| Runners | Shell, Docker, K8s... | act_runner | Forgejo Runner |
| Registre de paquets | Oui | Oui | Oui |
| SAST/DAST intégré | Oui (EE) | Externe | Externe |
| Gouvernance | GitLab Inc. | CommitGo Inc. | Communauté (Codeberg e.V.) |
| Licence | MIT (CE) + propriétaire (EE) | MIT | GPL v3+ |
| Complexité opérationnelle | Élevée | Faible | Faible |
Architecture Omnibus
Section intitulée « Architecture Omnibus »L'installation Omnibus (la méthode standard recommandée par GitLab) regroupe tous les composants dans un seul package Debian/RPM :
- NGINX, reverse proxy interne, port 80/443
- Puma, serveur applicatif Ruby on Rails
- Sidekiq, traitement des jobs asynchrones
- PostgreSQL, base de données principale
- Redis, cache et file de jobs
- Gitaly, service d'accès aux dépôts Git
- GitLab Runner, agent CI/CD (installé séparément)
/etc/gitlab/gitlab.rb ← configuration principale (Omnibus)/var/opt/gitlab/ postgresql/data/ ← base de données git-data/repositories/ ← dépôts Git (via Gitaly) backups/ ← archives gitlab-backup/var/log/gitlab/ ← journaux par composantLa reconfiguration s'applique avec gitlab-ctl reconfigure après chaque modification
de gitlab.rb.
À retenir
Section intitulée « À retenir »- GitLab s'installe via un package Omnibus unique, tous les composants inclus
- La configuration complète est dans
/etc/gitlab/gitlab.rb, appliquée avecgitlab-ctl reconfigure gitlab-backup creategénère un backup complet (hors secrets et config)- L'upgrade suit un chemin officiel par versions mineures, ne pas sauter de version majeure
- Les runners s'installent séparément et s'enregistrent avec un token
glrt-