Maison > Article > outils de développement > Une brève analyse de la façon d'utiliser Dcoker pour déployer GitLab sur Linux
GitLab est un logiciel de gestion d'entrepôt basé sur le système de contrôle de version Git avec des fonctions riches, notamment la gestion de projet, la révision de code, le CI/CD et la gestion d'équipe. Cet article explique comment utiliser Dcoker pour déployer GitLab sur un système Linux et effectuer une configuration et des tests simples.
Avant de déployer Gitlab, nous devons installer Docker. Ici, nous utilisons le système Ubuntu 18.04. Exécutez la commande suivante pour installer Docker :
sudo apt-get update sudo apt-get install docker.io
Après avoir installé Docker, vérifiez si Docker est installé avec succès :
docker --version
. Si vous voyez Si les informations sur la version de Docker s'affichent, Docker est installé avec succès.
Exécutez la commande suivante pour démarrer le conteneur Gitlab :
sudo docker run --detach --hostname gitlab.example.com \ --publish 443:443 --publish 80:80 --publish 22:22 \ --name gitlab \ --restart always \ --volume /srv/gitlab/config:/etc/gitlab \ --volume /srv/gitlab/logs:/var/log/gitlab \ --volume /srv/gitlab/data:/var/opt/gitlab \ gitlab/gitlab-ce:latest
Parmi eux, gitlab.example.com
为Gitlab的域名,/srv/gitlab/config
,/srv/gitlab/logs
,/srv/gitlab/data
sont respectivement le dossier de configuration, le dossier de journaux et le dossier de données de Gitlab.
Une fois le conteneur exécuté, nous devons obtenir le mot de passe de l'administrateur par défaut et exécuter la commande suivante :
sudo docker exec -it gitlab /bin/bash
Après être entré dans le conteneur, exécutez la commande suivante :
gitlab-rails console production u=User.where(id:1).first u.password='your_new_password_here' u.password_confirmation='your_new_password_here' u.save
Cela termine la réinitialisation du mot de passe de l'administrateur et quitte le conteneur.
Gitlab utilise Sendmail par défaut pour envoyer des e-mails. Si vous souhaitez utiliser SMTP pour envoyer des e-mails, vous devez modifier le fichier de configuration. Ici, nous utilisons la boîte aux lettres QQ comme courrier électronique. Si vous utilisez d'autres boîtes aux lettres, veuillez modifier l'adresse SMTP, le port, le nom d'utilisateur et le mot de passe en fonction de la situation réelle.
Tout d'abord, créez ou modifiez gitlab.rb dans le dossier de configuration de Gitlab. Vous pouvez utiliser la commande suivante pour créer le fichier et écrire la configuration :
sudo touch /srv/gitlab/config/gitlab.rb sudo echo "gitlab_rails['smtp_enable'] = true" >> /srv/gitlab/config/gitlab.rb sudo echo "gitlab_rails['smtp_address'] = \"smtp.qq.com\"" >> /srv/gitlab/config/gitlab.rb sudo echo "gitlab_rails['smtp_port'] = 465" >> /srv/gitlab/config/gitlab.rb sudo echo "gitlab_rails['smtp_user_name'] = 'your_qq_email_address'" >> /srv/gitlab/config/gitlab.rb sudo echo "gitlab_rails['smtp_password'] = 'your_qq_email_password'" >> /srv/gitlab/config/gitlab.rb sudo echo "gitlab_rails['smtp_domain'] = \"smtp.qq.com\"" >> /srv/gitlab/config/gitlab.rb sudo echo "gitlab_rails['smtp_authentication'] = \"login\"" >> /srv/gitlab/config/gitlab.rb sudo echo "gitlab_rails['smtp_enable_starttls_auto'] = true" >> /srv/gitlab/config/gitlab.rb sudo echo "gitlab_rails['smtp_tls'] = true" >> /srv/gitlab/config/gitlab.rb
Faites attention à changer l'e-mail et le mot de passe QQ dans la configuration.
Après avoir modifié la configuration, vous devez redémarrer Gitlab pour que la configuration prenne effet. Exécutez la commande suivante :
sudo docker restart gitlab
Après cela, vous pouvez accéder à la page de gestion de Gitlab et entrer le compte administrateur et le nouveau. mot de passe pour accéder au système.
Cet article présente uniquement le déploiement et la configuration simples de GitLab. Pour des paramètres et des informations de configuration plus détaillés, veuillez vous référer à la documentation officielle de GitLab.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!