TUTOS.EU

Installer son propre serveur GitLab sous Linux

La documentation pour installer son propre serveur se trouve sur https://about.gitlab.com/install

Il y a des instructions spécifiques suivant les OS. Le mieux est encore de les suivre.

Une fois que l'on a sélectionné son OS (ici j'ai pris une AlmaLinux), on voit une première partie concernant les prérequis. Cela indique les composants à installer ainsi que la ligne de commande qui va avec.

En ce mois de juin 2023, pour AlmaLinux cela installe SElinux, ssh, perl, cela configure le Firewall et installe un serveur mails postfix

sudo dnf install -y curl policycoreutils openssh-server perl
sudo systemctl enable sshd
sudo systemctl start sshd

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld

sudo dnf install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
Lien vers le fichier : cliquez ici Copier le code

La seconde partie concerne l'installation de GitLab elle même.
Pour cela on appelle un script en tant que root avec la commande curl qui configure le dépôt GitLab.
Puis on lance l'installation en passant en paramètre l'url que vous allez utiliser pour joindre votre serveur interne.

En juin 2023, pour AlmaLinux, le script à appeler est

curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
Lien vers le fichier : cliquez ici Copier le code

Et le lancement de l'installation se fait en adaptant cette commande où il faut préciser l'url de votre GitLab.

Notez qu'ici l'url est en http pour ne pas à avoir à fournir un certificat, mais il est préférable de générer un certificat et d'avoir cette url en https

sudo EXTERNAL_URL="http://urldevotregitlab.com" dnf install -y gitlab-ee
Lien vers le fichier : cliquez ici Copier le code

L'installation terminée, Gitlab indiquera le login par défaut (ici root). Le mot de passe est lui stocké dans /etc/gitlab/initial_root_password

Vous pouvez donc facilement récupérer le mot de passe en tapant

cat /etc/gitlab/initial_root_password
Lien vers le fichier : cliquez ici Copier le code

Exemple

De là, dans un navigateur, entrez l'url ou l'ip de votre serveur puis entrez le login/mot de passe précédemment récupéré

De là, comme vous êtes admin, vous avez accès à l'admin area

Vous pourrez vous créer un compte autre que root pour vos projets

Et comme mis en alerte, vous pourrez désactiver le fait que n'importe qui peut demander un compte

Sur cette vidéo de Korben, il montre les bases de l'utilisation de Gitlab en tant que client.

Il va vous faire créer un projet

Depuis un template

Un projet web

Vous lui donnez un nom etc

Votre projet créé, vous pourrez aller sur Clone et copier l'url indiquée

Ensuite depuis un poste client vous pourrez installer un client git avec

yum install git-core
Lien vers le fichier : cliquez ici Copier le code

Et cloner votre projet sur le poste en utilisant l'url précédemment copiée.

La commande à utiliser est git clone. Exemple

git clone http://urldeclonageduprojet/myuser/monprojet.git
Lien vers le fichier : cliquez ici Copier le code

Exemple

Dans les commandes utilisées sur la vidéo de Korben, j'ai vu ces dernières. Il faut que je détaille par la suite mais en attendant ..

Nom de la commande
git clone urlduprojet
git status
git add votrenouveaufichier
git commit
git push origin master
git pull -all
git branch new-feature
git checkout new-feature

2