GitLab je bezplatná platforma DevOps s otevřeným zdrojovým kódem, která týmům umožňuje rychlejší iteraci a společné inovace. Je to webový nástroj vyvinutý společností GitLab Inc. Je velmi podobný GitHubu a poskytuje správce úložiště Git, který poskytuje wiki, sledování problémů a nepřetržitou integraci a nasazení. Komunitní edice GitLab je k dispozici zcela zdarma pro vývojové a produkční prostředí.
V tomto tutoriálu vám ukážu, jak nainstalovat GitLab s Nginx a Let's Encrypt SSL na Debian 11.
Předpoklady
- Server se systémem Debian 11 s minimálně 8 GB RAM.
- Platný název domény s adresou IP serveru.
- Na serveru je nakonfigurováno heslo uživatele root.
Začínáme
Před spuštěním se doporučuje aktualizovat mezipaměť balíčku na nejnovější verzi. Můžete to udělat pomocí následujícího příkazu:
apt-get update -y
Jakmile budete hotovi, nainstalujte další požadované závislosti pomocí následujícího příkazu:
apt-get install curl ca-certificates apt-transport-https gnupg2 -y
Jakmile jsou nainstalovány všechny požadované závislosti, můžete přejít k dalšímu kroku.
Přidat úložiště GitLab
Ve výchozím nastavení není balíček GitLab dostupný ve výchozím úložišti Debianu. Takže budete muset přidat úložiště GitLab do APT.
Můžete jej přidat spuštěním následujícího skriptu:
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash
Tím přidáte úložiště GitLab do souboru zdrojového seznamu APT.
V době psaní tohoto článku není balíček GitLab dostupný pro Debian 11. Budete tedy muset upravit zdrojový soubor GitLab a nahradit kódové jméno Debianu 11 Debianem 10:
nano /etc/apt/sources.list.d/gitlab_gitlab-ce.list
Najděte následující řádky:
deb https://packages.gitlab.com/gitlab/gitlab-ce/debian/ bullseye main deb-src https://packages.gitlab.com/gitlab/gitlab-ce/debian/ bullseye main
Nahradil je následujícími řádky:
deb https://packages.gitlab.com/gitlab/gitlab-ce/debian/ buster main deb-src https://packages.gitlab.com/gitlab/gitlab-ce/debian/ buster main
Uložte a zavřete soubor a poté aktualizujte úložiště pomocí následujícího příkazu:
apt-get update -y
Nainstalujte GitLab CE
Nyní můžete nainstalovat GitLab CE spuštěním následujícího příkazu:
apt-get install gitlab-ce -y
Jakmile bude GitLab nainstalován, měli byste získat následující výstup:
It looks like GitLab has not been configured yet; skipping the upgrade script. *. *. *** *** ***** ***** .****** ******* ******** ******** ,,,,,,,,,***********,,,,,,,,, ,,,,,,,,,,,*********,,,,,,,,,,, .,,,,,,,,,,,*******,,,,,,,,,,,, ,,,,,,,,,*****,,,,,,,,,. ,,,,,,,****,,,,,, .,,,***,,,, ,*,. _______ __ __ __ / ____(_) /_/ / ____ _/ /_ / / __/ / __/ / / __ `/ __ \ / /_/ / / /_/ /___/ /_/ / /_/ / \____/_/\__/_____/\__,_/_.___/ Thank you for installing GitLab! GitLab was unable to detect a valid hostname for your instance. Please configure a URL for your GitLab instance by setting `external_url` configuration in /etc/gitlab/gitlab.rb file. Then, you can start your GitLab instance by running the following command: sudo gitlab-ctl reconfigure For a comprehensive list of configuration options please see the Omnibus GitLab readme https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md Help us improve the installation experience, let us know how we did with a 1 minute survey: https://gitlab.fra1.qualtrics.com/jfe/form/SV_6kVqZANThUQ1bZb?installation=omnibus&release=14-3
Konfigurovat GitLab
V tomto okamžiku je GitLab na vašem systému nainstalován, ale ještě není nakonfigurován. Můžete jej nakonfigurovat úpravou následujícího souboru:
nano /etc/gitlab/gitlab.rb
Na následujícím řádku změňte název své domény:
external_url 'https://gitlab.linuxbuz.com'
Dále změňte následující řádky, abyste povolili šifrování SSL:
# Enable the Let's encrypt SSL letsencrypt['enable'] = true # This is optional to get SSL related alerts letsencrypt['contact_emails'] = ['[email protected]'] # This example renews every 7th day at 02:00 AM letsencrypt['auto_renew_hour'] = "2" letsencrypt['auto_renew_minute'] = "0" letsencrypt['auto_renew_day_of_month'] = "*/7"
Uložte a zavřete soubor a poté znovu nakonfigurujte GitLab pomocí následujícího příkazu:
gitlab-ctl reconfigure
Jakmile je GitLab překonfigurován, měli byste získat následující výstup obsahující přístupové heslo GitLab:
Notes: Default admin account has been configured with following details: Username: root Password: You didn't opt-in to print initial root password to STDOUT. Password stored to /etc/gitlab/initial_root_password. This file will be cleaned up in first reconfigure run after 24 hours. NOTE: Because these credentials might be present in your log files in plain text, it is highly recommended to reset the password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password. gitlab Reconfigured!
Dále získejte přístupové heslo GitLab pomocí následujícího příkazu:
cat /etc/gitlab/initial_root_password
Měli byste vidět následující výstup:
# WARNING: This value is valid only in the following conditions # 1. If provided manually (either via `GITLAB_ROOT_PASSWORD` environment variable or via `gitlab_rails['initial_root_password']` setting in `gitlab.rb`, it was provided before database was seeded for the first time (usually, the first reconfigure run). # 2. Password hasn't been changed manually, either via UI or via command line. # # If the password shown here doesn't work, you must reset the admin password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password. Password: WBgnk2SH4xK5FeJVsJX0Qo79IeyE5LSTGWm3EjDVEkw= # NOTE: This file will be automatically deleted in the first reconfigure run after 24 hours.
Přístup do GitLab
Nyní máte přístup k řídicímu panelu GitLab pomocí adresy URL https://gitlab.linuxbuz.com . Budete přesměrováni na přihlašovací stránku GitLab:
Zadejte své uživatelské jméno, heslo a klikněte na Přihlásit se knoflík. Na následující obrazovce byste měli vidět řídicí panel GitLab:
Konfigurace GitLab Backup
Po instalaci se doporučuje provést kompletní zálohu GitLabu. Můžete to udělat pomocí následujícího příkazu:
gitlab-rake gitlab:backup:create
Zálohování můžete také naplánovat úpravou souboru /etc/crontab:
nano /etc/crontab
Přidejte následující řádek:
0 22 * * * root gitlab-rake gitlab:backup:create
Po dokončení uložte a zavřete soubor.
Závěr
Gratulujeme! úspěšně jste nainstalovali GitLab s Nginx a Let's Encrypt SSL na Debian 11. Nyní můžete implementovat GitLab do vývojového prostředí, aby byl proces vývoje softwaru rychlejší. Pokud máte nějaké dotazy, neváhejte se mě zeptat.