SAE 2.03

Guide du Serveur GitLab

Tout comprendre sur la forge logicielle et son déploiement.

Introduction

D'après Wikipédia, GitLab est un logiciel libre de forge basé sur Git. Il a été créé par Dmitriy Zaporozhets et Valery Sizov. C'est une plateforme complète qui permet de gérer tout le cycle de vie d'un projet informatique (DevOps).

Distributions (Open Core)

GitLab CE

Community Edition : La version open source sous licence MIT que nous utilisons pour ce projet.

GitLab EE

Enterprise Edition : Version propriétaire avec des fonctionnalités supplémentaires pour les entreprises.

GitLab.com

Le service en ligne (SaaS) qui héberge des millions de projets, similaire à GitHub.

Histoire & Chiffres

  • Octobre 2011 : Lancement de la première version.
  • Juillet 2016 : Adoption explicite du modèle Open Core.
  • Utilisateurs célèbres : Utilisé par la NASA, SpaceX, IBM, le CERN et la GNOME Foundation.
  • Migration : En 2019, GitLab quitte Microsoft Azure pour Google Cloud Platform.

Fonctionnalités Clés

GitLab ne se contente pas de stocker du code, il propose également :

CI/CD : Intégration et livraison continues.
Suivi de bugs : Un système de tickets complet.
Wiki : Une documentation par projet.
Sécurité : Authentification LDAP et 2FA.

Déploiement Docker (Projet SAE)

Dans le cadre de la SAE 2.03, nous installons GitLab sur une base Debian vierge en utilisant un Dockerfile unique.


FROM debian:latest

# Installation des paquets requis
RUN apt-get update && apt-get install -y \
    curl openssh-server ca-certificates postfix

# Récupération du dépôt GitLab CE
RUN curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash

# Installation du serveur
RUN apt-get install -y gitlab-ce

# Ports exposés
EXPOSE 80 22