[FR] DEPLOIEMENT GITLAB AVEC DOCKER

devops sept. 02, 2017

Je suis en train de revoir la maniĂšre dont j'utilise mes services (Nginx, Bind, MariaDB, Plex, PlexPy, Ghost, GitLab, Varnish, ...) et je m'oriente vers du Docker pour faire tout ça (c'est pas fait encore) car j'ai quelques idĂ©es en tĂȘte pour faire du CI/CD, le tout avec GitLab ! 😘

J'ai prĂ©fĂ©rĂ© hĂ©berger moi mĂȘme le service car j'ai besoin d'y toucher un peu et j'avais pas envie d'avoir des restrictions. C'est un article relativement simple mais je prĂ©pare d'autres sujets autour de l'automatisation, qui je pense sera intĂ©ressant si vous faites un peu de devops.

Installation

Je ne décrit pas l'installation de Docker, vous trouverez toutes les informations qu'il vous faut sur le site officiel.

Pour l'installation de GitLab, j'utilise l'image docker officielle (qui est trÚs bien) de la Community Edition (alias CE). Mais avant de récupérer l'image, il faudra créer 3 dossiers qui seront utilisés pour les données (exportées du container). Pour le dossier /datas/docker/gitlab-ce, c'est un choix personnel, à vous de l'adpater :

mkdir -p /datas/docker/gitlab-ce/{config,data,logs}

Maintenant lançons le container (l'image sera automatiquement téléchargée si elle n'existe pas en locale) :

docker run -d \
    --hostname gitlab.xorhak.org \
    --name gitlab-ce \
    -p 3443:443 -p 380:80 -p 322/22 \
    --restart always \
    -v /datas/docker/gitlab-ce/config:/etc/gitlab:rw \
    -v /datas/docker/gitlab-ce/logs:/var/log/gitlab:rw \
    -v /datas/docker/gitlab-ce/data:/var/opt/gitlab:rw \
    gitlab/gitlab-ce:latest

Pour vĂ©rifier que le container est lancĂ©, vous pouvez le voir avec un docker ps | grep "gitlab-ce" (si vous lui avez donnĂ© le mĂȘme nom).

Configuration

Maintenant que l'installation est terminée, nous allons faire quelques configurations (c'est le minimum hein). Connectez-vous sur le port 380 (celui que vous avez mis) et l'utilisateur root avec le password 5iveL!fe (c'est celui par défaut).

Je vous recommande de changer le mot de passe, l'identifiant du compte, de personnaliser son profil (site, twitter, localisation, enfin si ça vous tente) et d'ajouter votre clé SSH publique ~/.ssh/id_rsa.pub.

Configuration locale

Par défaut git utilise le port 22 (comme c'est basé sur SSH), ici on a utilisé le port 322, donc faudra adapter la configuration en local, ça ce passe dans le fichier ~/.ssh/config (à adapter à vos besoins bien sûr) :

Host gitlab.xorhak.org
    Port 322
    AddressFamily inet

Pour l'option AddressFamily inet ce n'est pas obligatoire, moi c'était pour corriger un petit problÚme avec la prise en compte de l'IPv6 par défaut, alors que là ou j'étais, c'était seulement de l'IPV4. Normalement vous n'avez pas besoin de le mettre.

Conclusion

Le service GitLab est maintenant opĂ©rationnel et en seulement quelques minutes (si vous ĂȘtes un vieux comme moi, vous savez que l'installer manuellement, c'est une vrai misĂšre). Pour y faire un accĂšs plus propre, il restera Ă  mettre en place une configuration type proxypass vers le port 380, ça je vous laisse faire !

N'hĂ©sitez pas Ă  regarder/modifier le fichier /datas/docker/gitlab-ce/config/gitlab.rb pour vos besoins ! 😉

Les autres articles sont en cours de prĂ©paration, il faudra ĂȘtre patient !

Enjoy!
XorHak

Mots clés

DJΞRFY đŸŒ±

Engineer UNIX/Linux System & DevOps. I like #Apple, #Linux, #Docker, #Python, #Hashicorp tools, #Hacking, #Pentesting, #API, #GitLab CI/CD !

Super ! Vous vous ĂȘtes inscrit avec succĂšs.
Super ! Effectuez le paiement pour obtenir l'accĂšs complet.
Bon retour parmi nous ! Vous vous ĂȘtes connectĂ© avec succĂšs.
Parfait ! Votre compte est entiÚrement activé, vous avez désormais accÚs à tout le contenu.