Comment installer et configurer GitLab sur Ubuntu 18.04 LTS

GitLab est un gestionnaire de référentiel GIT open source basé sur Rails et développé par GitLab Inc. C’est un gestionnaire de dépôt GIT basé sur le Web qui permet à ton équipe de travailler sur le code, d’effectuer des demandes de fonctionnalités, de suivre les bogues et de tester et mettre en œuvre des applications. GitLab propose des fonctionnalités telles qu’un wiki, le suivi des problèmes, les revues de code, les flux d’activité et la gestion des fusions. Il est capable d’héberger plusieurs projets.

GitLab est disponible en quatre éditions :

  1. Gitlab CE (Community Edition) – auto-hébergé, gratuit et avec l’aide du forum communautaire.
  2. Gitlab EE (Enterprise Edition) – auto-hébergée, payante et dotée de fonctionnalités supplémentaires.
  3. GitLab.com – SaaS, gratuit.
  4. GitLab.io – Instance GitLab privée gérée par GitLab Inc.

Dans ce tutoriel, je vais te montrer, étape par étape, comment installer GitLab CE (Community Edition) sur ton propre serveur Ubuntu 18.04 LTS (Bionic Beaver). J’utiliserai le paquet ‘omnibus’ fourni par GitLab pour faciliter l’installation.

Conditions préalables

  • Serveur Ubuntu 18.04
  • Mémoire RAM minimale de 4 Go – pour de meilleures performances, utilise 8 Go
  • Privilèges Root

Ce que nous allons faire

  1. Mettre à jour le référentiel et mettre à niveau les paquets
  2. Installer les dépendances
  3. Installer GitLab Community Edition
  4. Générer le certificat SSL Letsencrypt et DHPARAM
  5. Configurer HTTPS pour GitLab
  6. Configurer le pare-feu Ubuntu UFW
  7. Post-installation de GitLab
  8. Tester

Étape 1 – Mise à jour du référentiel et mise à niveau des paquets

Avant d’installer des paquets sur le système, mets à jour tous les référentiels disponibles, puis mets à niveau tous les paquets sur le système.

Exécute les commandes apt ci-dessous.

sudo apt update
sudo apt upgrade -y

Attends les paquets d’installation qui seront mis à niveau.

Installer les mises à jour d'Ubuntu

Étape 2 – Installe les dépendances de Gitlab

GitLab a besoin de certaines dépendances de paquets pour l’installation, notamment curl, postfix et ca-certificats.

Installe les dépendances des paquets GitLab à l’aide de la commande apt ci-dessous.

sudo apt install curl openssh-server ca-certificates postfix -y

Pendant l’installation de postfix, tu seras invité à indiquer la configuration, sélectionne ‘Site Internet’.

Configure Postfix

Puis saisis le nom de domaine du serveur qui sera utilisé pour envoyer un e-mail.

Saisis le nom de domaine

Et nous sommes prêts à installer GitLab sur le serveur.

Étape 3 – Installer GitLab

Dans cette étape, nous allons installer GitLab à l’aide des paquets Omnibus. L’Omnibus installera tous les paquets, services et outils nécessaires pour exécuter GitLab sur le serveur.

Ajoute le dépôt GitLab avec la commande curl.

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

Télécharge le script d'installation de gitlab

Puis installe GitLab CE Community Edition avec la commande apt.

sudo apt install gitlab-ce -y

La commande téléchargera et installera le paquet GitLab CE, et lorsque l’installation sera terminée, tu verras les résultats comme ci-dessous.

La routine d'installation de Gitlab CE démarre

Ensuite, nous devons configurer l’URL qui sera utilisée pour accéder à notre serveur GitLab. Nous utiliserons un domaine nommé ‘git.hakase-labs.pw’ pour l’URL d’accès à GitLab et nous activerons le HTTPS sur celui-ci.

Pour modifier l’URL d’accès à GitLab, modifie le fichier ‘/etc/gitlab/gitlab.rb’.

sudo vim /etc/gitlab/gitlab.rb

Change maintenant la valeur ‘external_url’ avec ton propre nom de domaine.

external_url 'http://git.hakase-labs.pw'

Sauvegarde et quitte.

Étape 4 – Générer le certificat SSL Let’s encrypt et le certificat DHPARAM

Dans cette étape, nous allons générer un nouveau certificat Letsencrypt et un certificat DHPARAM pour le nom de domaine GitLab ‘git.hakase-labs.pw’.

Installe l’outil Letsencrypt à l’aide de la commande apt ci-dessous.

sudo apt install letsencrypt -y

Et une fois l’installation terminée, exécute la commande letsencrypt ci-dessous.

sudo letsencrypt certonly --standalone --agree-tos --no-eff-email --agree-tos --email [email protected] -d git.hakase-labs.pw

Et quand elle est terminée, tu obtiendras le résultat indiqué ci-dessous.

Get lets encrypt SSL certificate

Les certificats SSL Letsencrypt ont été générés et se trouvent dans le répertoire ‘/etc/letsencyrpt/’.

Ensuite, nous allons générer le certificat DHPARAM à l’aide de la commande OpenSSL.

Crée un nouveau répertoire ‘/etc/gitlab/ssl’ et exécute la commande OpenSSL ci-dessous.

sudo mkdir -p /etc/gitlab/ssl/
sudo openssl dhparam -out /etc/gitlab/ssl/dhparams.pem 2048

Change maintenant la permission du répertoire SSL.

chmod 600 /etc/gitlab/ssl/*

Récupère le fichier DHPARAM

Et tous les certificats nécessaires à la configuration HTTPS de GitLab ont été générés.

Étape 5 – Configurer HTTPS pour GitLab

Afin d’activer le HTTPS pour l’installation de GitLab, nous devons modifier le fichier ‘gitlab.rb’.

Modifie le fichier ‘/etc/gitlab/gitlab.rb’ à l’aide de lacommande vim ci-dessous.

sudo vim /etc/gitlab/gitlab.rb

Change le ‘external_url’ de Gitlab en ‘https://git.hakase-labs.pw’.

external_url 'https://git.hakase-labs.pw'

Colle maintenant la configuration ci-dessous dans la section ‘#GitLab Nginx’.

nginx['redirect_http_to_https'] = true
nginx['ssl_certificate'] = "/etc/letsencrypt/live/git.hakase-labs.pw/fullchain.pem"
nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/git.hakase-labs.pw/privkey.pem"
nginx['ssl_dhparam'] = "/etc/gitlab/ssl/dhparams.pem"

Sauvegarde et quitte.

Configurer SSL dans Gitlab

Exécute maintenant la commande ‘gitlab-ctl’ ci-dessous.

sudo gitlab-ctl reconfigure

Cette commande installera et configurera GitLab en fonction du fichier de configuration ‘/etc/gitlab/gitlab.rb’.

Une fois l’installation terminée, tu verras le résultat ci-dessous.

Redémarre les services

L’installation de GitLab est terminée et HTTPS pour GitLab a été activé.

Étape 6 – Configurer le pare-feu Ubuntu UFW

Dans cette étape, nous allons activer le pare-feu Ubuntu UFW. Il est déjà installé sur le système, nous devons juste démarrer le service. Nous allons exécuter GitLab derrière le pare-feu Ubuntu UFW, nous devons donc ouvrir les ports HTTP et HTTPS.

Ajoute les services ssh, http et https à la configuration.

sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https

Et active le pare-feu Ubuntu UFW avec la commande ci-dessous.

sudo ufw enable

Tape ‘y’ pour oui pour l’activer.

Maintenant, vérifie tous les services et les ports de la liste.

sudo ufw status

Tu trouveras les services ssh, http et https dans la liste.

Étape 7 – Post-installation de GitLab

Ouvre le navigateur Web et tape l’URL de gitlab ‘git.hakase-labs.pw’, et tu seras redirigé vers la connexion HTTPS.

Crée un nouveau mot de passe pour la racine GitLab

Saisis ton nouveau mot de passe pour l’utilisateur root de GitLab, et clique sur le bouton ‘Change your password’.

Définir le mot de passe root de Gitlab

Connecte-toi maintenant en tant qu’utilisateur ‘root’ avec ton propre mot de passe et clique sur le bouton ‘Connexion’.

Connexion en tant que rac rac rac rac rac rac rac rac rac

Tu obtiendras maintenant le tableau de bord GitLab.

Tableau de bord Gitlab

Change de profil

Clique sur le bouton du profil et choisis ‘Paramètres’.

Modifier les paramètres du profil de l'utilisateur

Dans la section ‘Paramètres principaux’, tape le nom de profil ‘hakase’ puis clique sur l’option ‘mettre à jour les paramètres du profil’.

Change de nom d’utilisateur

Clique sur l’onglet ‘Compte’ et tape le nom d’utilisateur ‘hakase’.

Change le nom d'utilisateur

Appuie ensuite sur le bouton « Mettre à jour le nom d’utilisateur ».

Ajouter une clé SSH

Génère une nouvelle clé à l’aide de la commande ssh-keygen comme ci-dessous.

ssh-keygen
cat ~/.ssh/id_rsa.pub

Copie la clé ‘id_rsa.pub’.

Ajouter une clé SSH

Retourne maintenant dans le tableau de bord de l’utilisateur GitLab et clique sur le menu ‘SSH Key’ sur la gauche.

Ajoute la clé SSH dans Gitlab

Colle la clé publique ssh ‘id_rsa.pub’ et clique sur le bouton ‘Ajouter une clé’.

Restrictions d’inscription

Clique sur le bouton « Zone d’administration » au milieu, puis clique sur « Paramètres ».

Configuration des restrictions à l'inscription

Décoche l’option « Inscription autorisée » et clique sur le bouton « Enregistrer les modifications ».

Limite du compte

Clique sur la section ‘Compte et limite’ et fixe la limite de projet par défaut à 20.

Définis les limites du compte

Et clique sur le bouton « Enregistrer les modifications ».

Étape 8 – Tester Gitlab

Enfin, nous allons effectuer quelques tests pour nous assurer que notre système GitLab fonctionne correctement.

Crée un nouveau projet

Clique sur l’icône plus dans le milieu supérieur pour créer un nouveau dépôt de projet. Saisis le nom de ton projet, sa description et configure les paramètres de visibilité de ton projet. Puis clique sur le bouton « Créer le projet ».

Créer un projet

Le nouveau projet a été créé.

Teste le premier Commit et Push

Nous allons maintenant commencer à ajouter du nouveau contenu au référentiel. Assure-toi que Git est installé sur ton ordinateur, et nous devons configurer le nom d’utilisateur global et l’email pour git avec la commande ci-dessous.

git config --global user.name "hakase"
git config --global user.email "[email protected]"

Clone le référentiel et ajoute un fichier README.md.

git clone https://git.hakase-labs.pw/hakase/project01.git
cd project01/
vim README.md

On te demandera le mot de passe de l’utilisateur ‘hakase’. Tape le même mot de passe que celui que tu as utilisé lorsque nous avons accédé à GitLab la première fois.

Valide un nouveau fichier dans le référentiel ‘project01’.

git add .
git commit -m 'Add README.md file by hakase-labs'

Ensuite, pousse la modification vers le référentiel sur le serveur GitLab.

git push origin master

Saisis ton mot de passe et appuie sur Entrée pour continuer. Tu verras le résultat comme ci-dessous.

Git test commit

Ouvre maintenant le projet ‘project01’ depuis ton navigateur Web et tu verras que le nouveau fichier README.md a été ajouté au référentiel.

Teste le projet dans Gitlab

Le guide d’installation de GitLab sur Ubuntu 18.04 a été réalisé avec succès.

Référence

Vous aimerez aussi...