logo Gitlab

Installer Gitlab

git


Vous adorez Github et vous avez un projet top secret à développer. Vous avez la solution de prendre un abonnement Github à 7$/mois qui vous permet d’avoir 5 projets privés d’hébergés. Cette solution est la meilleure si vous ne souhaitez pas vous investir dans la gestion d’un serveur. Ici, nous vous parlerons de comment mettre en place votre propre serveur Gitlab pour moins de 7$/mois mais avec un peu plus de sueur et de travail.

Cet article traite de l’installation depuis les paquets communautaires. Si vous souhaitez installer Gitlab depuis les sources et pouvoir gérer l’ensemble de la configuration. Rendez vous sur l’article : Gitlab: Installation depuis les sources

Choix de l’emplacement

Vous pouvez installer Gitlab, sur votre ordinateur en local, un serveur sur l’internet ou encore une machine virtuelle héberger sur un serveur sur l’internet. La procédure sera presque la même quelle que soit la destination. Mais je pense que c’est une bonne occasion pour louer un serveur virtuel privé au vu des prix actuels, pour information :

Minimum Recommandé
OVH 2€HT/mois 5€HT/mois
1and1 5€HT/mois 8€HT/mois

Oui, je vous l’ai fait façon pochette de jeux vidéo avec une version mini ou vous pouvez jouer mais avec des graphismes pourris et une version recommandée où vous pouvez jouer correctement.

Au niveau des recommandations concrètes, Gitlab conseille de prendre 2 cores et 2 Go de RAM (bon c’est la recommandation pour 500 utilisateurs alors vu que je suis solo, j’ai pris le moins cher).

Donner une adresse à votre Gitlab

Vous n’utiliserez pas l’adresse IP, qu’elle soit V4 ou V6, pour vous adresser à votre serveur. De plus, Gitlab vous insultera lorsque vous terminerez sa configuration si vous n’avez pas de nom de domaine pleinement qualifié.

Si vous hébergez votre Gitlab sur l’internet ou gérez vous-même votre DNS, il vous faudra ajouter une nouvelle entrée de type A sur votre DNS.

gitlab.perhonen.fr. 70206   IN  A   92.222.2.131

Cette adresse devra être utilisée dans la configuration de Gitlab.

Pour les personnes souhaitant installer un Gitlab sur un réseau local sans DNS. Vous pouvez spécifier dans le fichier hosts, de vos clients, qui se trouve dans /etc/hosts, le lien entre le nom et l’adresse IP de la machine. Cela vous évitera la mise en place d’un DNS qui n’est pas forcément utile dans les petites structures. Cependant, vous devrez spécifier le lien entre le nom de la machine et l’adresse IP sur chaque client (ce qui peut être rébarbatif). Exemple de fichier /etc/hosts :

127.0.0.1       localhost
127.0.0.1       client.perhonen.local     client
192.168.1.249   gitlab.perhonen.fr

Vous trouverez ce même fichier sous Windows dans C:\Windows\system32\drivers\etc\.

Préparer votre machine virtuelle

Si vous avez pris votre machine virtuelle chez OVH ou chez un autre prestataire, vous devez déjà avoir le paquet openssh-server d’installé. Je passerais donc l’installation de celui-ci.

Pour la configuration du pare-feu, je vous laisse suivre l’article parlant de mes règles iptables. N’oubliez juste pas de dé-commenter la règles iptables permettant d’accéder à l’interface de Gitlab.

$IPT -A INPUT -p tcp --dport 3550 -j ACCEPT

Votre serveur devra aussi pouvoir envoyer des mails vers vos utilisateurs Gitlab, nous installons donc le serveur mail postfix.

# apt-get install postfix

Sélectionner l’option Site Internet, puis entrer votre nom de domaine afin que les mails partant de votre serveur soient pleinement qualifiés.

Installer Gitlab

Pour commencer, il vous faut télécharger le paquet communautaire correspondant à votre distribution sur le site Gitlab. Pour ma part, je télécharge la version dédiée à Debian 7, la version actuellement proposée est la 7.8.1.

$ wget https://downloads-packages.s3.amazonaws.com/debian-7.8/gitlab_7.8.1-omnibus-1_amd64.deb
# dpkg -i gitlab_7.8.1-omnibus-1_amd64.deb

Maintenant, nous allons demander à gitlab-ctl de configurer toute l’installation, c’est à dire rubis, unicorn, nginx, postgresql, redis et logrotate.

# gitlab-ctl reconfigure

L’installation est terminée, vous avez maintenant accès à votre gitlab perso à l’adresse http://gitlab.perhonen.fr:3550/. Les identifiants de connexion par défaut sont :

Utilisateur : root
Mot de passe : 5iveL!fe

Je vous conseille vivement de les modifier et de vous créer un utilisateur perso.

Problèmes rencontrés : FQDN unknown

Si lors de l’installation de Debian, vous n’avez pas pleinement qualifié le nom de domaine Gitlab vous le rappellera avec l’erreur suivante :

# gitlab-ctl reconfigure
...
RuntimeError
------------
External URL must include a FQDN

Un nom de domaine complètement qualifié comprend le nom de la machine (hostname) suivi du nom de domaine jusqu’à la racine. Par exemple, gitlab.perhonen.fr. est le nom de domaine pleinement qualifié de la machine gitlab du domaine perhonen.fr., le point final correspondant à la racine.

Pour corriger cette erreur vous devez spécifier le nom de domaine que vous désirez attribuer à votre serveur Gitlab comme cela :

# vi /etc/gitlab/gitlab.rb
external_url='gitlab.perhonen.fr'

Commentaires

  • Switchh

    Article très intéressant !
    Faudrait que j’essaye un de ces quatre mais bon, le seul accès dont j’ai besoin est héberger par le maître Anthony en personne et ça m’arrange 😀

  • zlka

    Superbe article ! Très très intéressant. J’ai suivi les étapes et tout a bien fonctionné sur mon ubuntu 14.04. Seul bémol, je n’ai pas trop compris pourquoi, mon serveur localhost entier redirige maintenant vers gitlab. Bon comme cette machine servira que à ça, ce n’est pas grave, mais c’est quand même étrange que tout soit redirigé vers « http://localhost/users/sign_in ».

    Merci beaucoup !

  • cipy

    un tuto plus complet serait la bienvenu, dans ce style https://www.prestashop.com/forums/topic/278026-tuto-installer-son-serveur-d%C3%A9di%C3%A9-vps-2013-et-2015-ovh-de-a-%C3%A0-z-ispconfig-site/

  • Anthony

    C’est possible, mais ma ligne de conduite est de ne faire des articles ne traitant qu’un sujet à la fois.
    L’article que vous présentez sur le site PrestaShop englobe beaucoup de chose, de l’installation du VPS à l’installation de PrestaShop. Cependant si vous souhaitez installer PrestaShop sur un autre serveur, connaissez déjà SSH ou encore travaillez sous Linux une grande partie de l’article vous est inutile.
    Ce n’est pas ma ligne éditoriale (grand mot pour ce modeste blog). Cet article parle de VPS pour parler de mon choix personnel mais considère que vous savez déjà installer un VPS et ouvrir une connexion SSH (2 choses qui sont inutiles si vous installez Gitlab en local).

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.