| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente |
| linux_gitlab [2020/02/21 12:31] – [Paramétrage SMTP] nekan | linux_gitlab [2021/03/05 16:32] (Version actuelle) – nekan |
|---|
| ~~CLOSETOC~~ | |
| ====== GitLab - Installation d'une plateforme DevOps ====== | ====== GitLab - Installation d'une plateforme DevOps ====== |
| | <label type="info">Création</label> --- //[[nekan@shyrkasystem.com|Nicolas THOREZ]] 2020/02/21 09:21// |
| |
| ''GitLab'' est une plateforme de gestion ''DevOps''. Elle permet de coopérer sur le développement de projet, de suivre les modifications, de les acter ou les refuser, etc... | ''GitLab'' est une plateforme de gestion ''DevOps''. Elle permet de coopérer sur le développement de projet, de suivre les modifications, de les acter ou les refuser, etc... |
| * Référence : [[https://about.gitlab.com/|GitLab]] | * Référence : [[https://about.gitlab.com/|GitLab]] |
| |
| <WRAP center round info 60%> | <callout type="primary" icon="true" title="Environnement">Cette procédure a été réalisée et testée sur un VM Debian 10.</callout> |
| Cette procédure a été réalisée et testée sur un VM Debian 10. | |
| </WRAP> | |
| |
| <WRAP center round alert 60%> | <callout type="danger" icon="true" title="Droits">Cette procédure nécessite des droits ''root''. Faîtes donc attention à ce que vous faîtes.</callout> |
| Cette procédure nécessite des droits ''root''. Faîtes donc attention à ce que vous faîtes. | |
| </WRAP> | |
| |
| ===== Prérequis ===== | ===== Prérequis ===== |
| |
| <WRAP center round important 60%> | <callout type="warning" icon="true" title="Ressources">''GitLab'' peut nécessiter pas mal de ressources CPU, RAM et Disque. Veillez à dimensionner correctement le serveur. De plus, il installe son propre serveur ''nginx'', il est donc recommandé de l'installer sur un serveur sans service Web voire sur un serveur dédié.</callout> |
| ''GitLab'' peut nécessiter pas mal de ressources CPU, RAM et Disque. Veillez à dimensionner correctement le serveur. De plus, il installe son propre serveur ''nginx'', il est donc recommandé de l'installer sur un serveur sans service Web voire sur un serveur dédié. | |
| </WRAP> | |
| |
| L'installation de ''GitLab'' nécessite quelques prérequis au niveau des paquets : | L'installation de ''GitLab'' nécessite quelques prérequis au niveau des paquets : |
| <sxh bash>EXTERNAL_URL="http://gitlab.shyrkasys.local"</sxh> | <sxh bash>EXTERNAL_URL="http://gitlab.shyrkasys.local"</sxh> |
| |
| <WRAP center round tip 60%> | <callout type="primary" icon="true" title="Accessibilité"> |
| * J'ai utilisé ici une adresse local, définie sur mon DNS local. On peut très bien indiquer une adresse publique pour que le ''GitLab'' soit accessible de l'extérieur. | * J'ai utilisé ici une adresse local, définie sur mon DNS local. On peut très bien indiquer une adresse publique pour que le ''GitLab'' soit accessible de l'extérieur. |
| * L'adresse peut être en ''HTTPS'' dans ce cas, l'installateur va automatiquement faire une demande de certificat auprès de Let's Encrypt. | * L'adresse peut être en ''HTTPS'' dans ce cas, l'installateur va automatiquement faire une demande de certificat auprès de Let's Encrypt. |
| </WRAP> | </callout> |
| |
| * On installe le paquet : | * On installe le paquet : |
| |
| * Lors de la première connexion, ''GitLab'' vous demande de configurer le mot de passe de l'administrateur ''root'' : | * Lors de la première connexion, ''GitLab'' vous demande de configurer le mot de passe de l'administrateur ''root'' : |
| {{ :linux:gitlab:gitlab_001.png |}} | <image shape="thumbnail">{{ :linux:gitlab:gitlab_001.png |}}</image> |
| * Une fois renseigné, on peut alors se connecter sur le compte ''root'' : | * Une fois renseigné, on peut alors se connecter sur le compte ''root'' : |
| {{ :linux:gitlab:gitlab_002.png |}} | <image shape="thumbnail">{{ :linux:gitlab:gitlab_002.png |}}</image> |
| * Vous avez désormais accès à la page d’accueil de l'administrateur : | * Vous avez désormais accès à la page d’accueil de l'administrateur : |
| {{ :linux:gitlab:gitlab_003.png |}} | <image shape="thumbnail">{{ :linux:gitlab:gitlab_003.png |}}</image> |
| * De là, vous pouvez : | * De là, vous pouvez : |
| * Créer des utilisateurs. | * Créer des utilisateurs. |
| <sxh bash>gitlab-ctl reconfigure</sxh> | <sxh bash>gitlab-ctl reconfigure</sxh> |
| |
| <WRAP center round important 60%> | <callout type="warning" icon="true" title="Messagerie">Certains paramètres dépendent entièrement de votre serveur SMTP. Vous trouverez d'autres explications et exemples sur [[https://docs.gitlab.com/omnibus/settings/smtp.html|GitLab]]</callout> |
| Certains paramètres dépendent entièrement de votre serveur SMTP. Vous trouverez d'autres explications et exemples sur [[https://docs.gitlab.com/omnibus/settings/smtp.html|GitLab]] | |
| </WRAP> | * On peut tester la configuration en lançant la console ''gitlab-rails'' : |
| | <sxh bash>gitlab-rails console</sxh> |
| | * Après quelques secondes de chargement, un nouveau prompteur apparaît. Exemple : |
| | <sxh bash>[12:26:16] root@gitlab:/var/log# gitlab-rails console |
| | -------------------------------------------------------------------------------- |
| | GitLab: 12.7.6-ee (32aad7c42f1) |
| | GitLab Shell: 11.0.0 |
| | PostgreSQL: 10.9 |
| | -------------------------------------------------------------------------------- |
| | Loading production environment (Rails 5.2.3) |
| | irb(main):001:0> |
| | </sxh> |
| | * On peut alors lancer la commande de vérification (en remplaçant ''user@mail.tld'' par votre adresse mail) : |
| | <sxh bash>Notify.test_email('user@mail.tld', 'Test', 'Test').deliver_now</sxh> |
| | * La console devrait alors vous renvoyer le résultat en sachant qu'elle affichera toute erreur qui pourrait subvenir. |
| |
| | <callout type="success" icon="true" title="Installation">Félicitations, vous avez désormais un serveur ''GitLab'' opérationnel.</callout> |
| |
| --- //[[nekan@shyrkasystem.com|Nicolas THOREZ]] 2020/02/21 09:21// | |
| ~~DISCUSSION~~ | ~~DISCUSSION~~ |