GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat a nakonfigurovat GitLab CE na CentOS 7

GitLab je open source správce úložiště založený na Rails vyvinutý společností GitLab Inc. Je to webový správce úložiště git, který umožňuje vašemu týmu spolupracovat na kódování, testování a nasazování aplikací. GitLab poskytuje několik funkcí, včetně wiki, sledování problémů, recenzí kódu a zdrojů aktivit.

GitLab Inc nabízí 4 produkty:

  1. Gitlab CE (Community Edition) – hostovaný a bezplatný; podpora z fóra komunity.
  2. Gitlab EE (Enterprise Edition) – hostovaný a placený; přichází s dalšími funkcemi.
  3. GitLab.com – SaaS a zdarma.
  4. GitLab.io – Soukromá instance GitLab spravovaná společností GitLab Inc.

V tomto tutoriálu budeme diskutovat o instalaci GitLab CE (Community Edition) krok za krokem na CentOS 7 Server se 4 GB RAM. V jednom z našich předchozích tutoriálů jsme provedli instalaci GitLab ručně. Zde však pro naši instalaci použijeme balíček 'omnibus' poskytovaný GitLab.

Co uděláme

  1. Instalujte balíčky
  2. Nainstalujte GitLab
  3. Nakonfigurujte adresu URL GitLab
  4. Vygenerujte SSL Let's encrypt a DHPARAM certifikát
  5. Povolte Nginx HTTPS pro GitLab
  6. Nakonfigurujte bránu firewall
  7. Proveďte instalaci GitLab
  8. Testování

Předpoklady

  • Server CentOS 7 – 64bitový
  • Minimálně 2 GB RAM
  • Oprávnění uživatele root

Krok 1 – Instalace balíčků

V tomto kroku si stáhneme/nainstalujeme některé balíčky potřebné pro instalaci GitLabu. Ke stažení instalačního programu úložiště, policycoreutils pro správce SELinux, OpenSSH a postfixu jako místního serveru SMTP použijeme curl.

Nainstalujte všechny tyto balíčky pomocí následujícího příkazu yum.

yum -y install curl policycoreutils openssh-server openssh-clients postfix

Poté spusťte služby ssh a postfix.

systemctl start sshd
systemctl start postfix

Nyní jim povolte jejich automatické spouštění při spouštění.

systemctl enable sshd
systemctl enable postfix

Všechny balíčky potřebné pro instalaci GitLab jsou nyní nainstalovány na serveru.

Krok 2 – Instalace GitLab

GitLab poskytuje instalační program pro přidání úložiště GitLab CE. Stáhněte si instalační program pomocí curl a spusťte skript (jak je znázorněno níže) pro přidání nového úložiště GitLab CE.

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

Do systému bylo přidáno úložiště GitLab CE.

Nyní nainstalujte GitLab pomocí následujícího příkazu yum.

yum -y install gitlab-ce

Po dokončení instalace získáte výsledek, jak je znázorněno níže.

Díky tomu je GitLab CE nyní nainstalován na serveru CentOS 7.

Krok 3 – Konfigurace adresy URL GitLab

V tomto tutoriálu použijeme název domény pro GitLab. Konkrétně budeme používat název domény 'gitlab.hakase-labs.co.'

Přejděte do konfiguračního adresáře GitLab '/etc/gitlab' a poté upravte konfigurační soubor 'gitlab.rb' pomocí editoru vim.

cd /etc/gitlab/
vim gitlab.rb

Změňte řádek external_url na název domény 'gitlab.hakase-labs.co '.

external_url 'http://gitlab.hakase-labs.co'

Uložte změny a ukončete vim.

Krok 4 – Generování SSL Pojďme šifrovat a certifikát DHPARAM

Pro základní vrstvu zabezpečení budeme používat SSL pro náš web GitLab. Použijeme bezplatný certifikát SSL od společnosti Letsencrypt a vygenerujeme certifikát DHPARAM, abychom přidali další vrstvu zabezpečení.

Abychom vygenerovali certifikát Letsencrypt, musíme nainstalovat nástroj příkazového řádku letsencrypt, který je k dispozici v úložišti.

Nainstalujte nástroj Letsencrypt na CentOS 7 pomocí příkazu yum níže.

yum -y install letsencrypt

Po dokončení instalace vygenerujte nový SSL certifikát letsencrypt pomocí příkazu níže.

letsencrypt certonly --standalone -d gitlab.hakase-labs.co

Poznámka: Při generování SSL Letsencrypt se ujistěte, že váš port HTTP a HTTPS není blokován bránou firewall.

Zadejte svou e-mailovou adresu pro obnovení oznámení, poté zadejte „A“ pro podmínky smlouvy Letsencrypt a nakonec zadejte „N“ a znovu stiskněte Enter.

A pokud vidíte výsledek, jak je uvedeno níže, znamená to, že váš certifikát pro název domény byl vygenerován a uložen v adresáři '/etc/letsencrypt/live'.

Dále vytvořte nový adresář 'ssl' v konfiguračním adresáři GitLab '/etc/gitlab/'.

mkdir -p /etc/gitlab/ssl/

Nyní vygenerujte soubor pem certifikátu DHPARAM pomocí OpenSSL. Větší část je bezpečnější.

sudo openssl dhparam -out /etc/gitlab/ssl/dhparams.pem 2048

A po vygenerování certifikátu DHPARAM změňte oprávnění souboru certifikátu na 600.

chmod 600 /etc/gitlab/ssl/*

Byly tedy vygenerovány certifikáty SSL Letsencrypt a DHPARAM pro instalaci GitLab.

Krok 5 – Povolení Nginx HTTPS pro GitLab

V této fázi již máme bezplatné soubory certifikátů SSL z Letsencrypt a certifikát DHPARAM, který je generován pomocí příkazu OpenSSL. A v tomto kroku povolíme HTTPS pro web GitLab. Povolíme HTTPS a vynutíme HTTP připojení HTTPS.

Nejprve přejděte do konfiguračního adresáře GitLab a upravte konfigurační soubor 'gitlab.rb'.

cd /etc/gitlab/
vim gitlab.rb

A změňte HTTP na HTTPS na řádku external_url.

external_url 'https://gitlab.hakase-labs.co'

Poté vložte následující konfiguraci pod konfiguraci řádku 'external_url'.

nginx['redirect_http_to_https'] = true
nginx['ssl_certificate'] = "/etc/letsencrypt/live/gitlab.hakase-labs.co/fullchain.pem"
nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/gitlab.hakase-labs.co/privkey.pem"
nginx['ssl_dhparam'] = "/etc/gitlab/ssl/dhparams.pem"

Uložte změny a ukončete vim.

Nakonec použijte konfiguraci GitLab pomocí následujícího příkazu.

gitlab-ctl reconfigure

A když je vše dokončeno, měli byste získat výsledek, jak je znázorněno níže.

Krok 6 – Konfigurace brány firewall

V tomto tutoriálu spustíme GitLab pod firewallem Firewalld. Ujistěte se tedy, že je v systému nainstalován. Pokud balíček nemáte, můžete jej nainstalovat pomocí následujícího příkazu.

yum -y install firewalld

Spusťte firewalld a povolte jeho automatické spouštění při spouštění pomocí příkazů systemctl, jak je uvedeno níže.

systemctl start firewalld
systemctl enable firewalld

Dále otevřete nové porty pro naše služby. Otevřeme porty SSH, HTTP a HTTPS pro naši konfiguraci GitLab. Spuštěním příkazů firewall-cmd níže otevřete porty.

firewall-cmd --permanent --add-service ssh
firewall-cmd --permanent --add-service http
firewall-cmd --permanent --add-service https

Nyní znovu načtěte firewall a zkontrolujte konfiguraci firewallu. Ujistěte se, že SSH, HTTP a HTTPS jsou na seznamu.

firewall-cmd --reload
firewall-cmd --list-all

Tímto je tedy konfigurace Firewallu pro GitLab dokončena.

Krok 7 – Proveďte instalaci

GitLab byl tedy nainstalován do systému a běží pod firewallem Firewalld. V tomto kroku provedeme některá rychlá nastavení po instalaci GitLabu na server.

Obnovit kořenové heslo GitLab

Otevřete webový prohlížeč a zadejte adresu URL gitlab 'gitlab.hakase-labs.co'. Budete přesměrováni na připojení HTTPS. Změňte heslo uživatele root svým vlastním heslem a potvrďte kliknutím na tlačítko „Změnit heslo“.

Nyní se můžete přihlásit k řídicímu panelu GitLab pomocí výchozího uživatelského 'root' a svého vlastního hesla.

Změnit profil a uživatelské jméno

Po přihlášení do řídicího panelu GitLab klikněte v pravém horním rohu svého profilu ikony a kliknutím na ikonu 'Nastavení' nastavte svůj profil.

Na kartě 'Profil' změňte své jméno a e-mailovou adresu a potvrďte kliknutím na tlačítko 'Aktualizovat nastavení profilu' ve spodní části.

Dále přejděte na kartu 'Účet' a změňte výchozí uživatelské jméno root na své vlastní uživatelské jméno a poté klikněte na tlačítko 'Aktualizovat uživatelské jméno'.

Přidat klíč SSH

Ujistěte se, že již máte klíč, pokud nemáte klíč SSH, můžete si jej vygenerovat pomocí příkazu níže.

ssh-keygen

A získáte dva klíče v adresáři ~/.ssh/. 'id_rsa' by byl váš soukromý klíč a 'id_rsa.pub' by byl váš veřejný klíč.

Dále se vraťte do webového prohlížeče a klikněte na kartu 'SSH Key'. Zkopírujte obsah souboru 'id_rsa.pub' a vložte jej do pole klíče a klikněte na 'Přidat klíč'.

Tímto byl aktualizován klíč SSH.

Omezení registrace a nastavení limitů

Klikněte na ikonu 'Admin Area' a poté klikněte na ikonu ozubeného kola a vyberte 'Settings'.

V části „Nastavení účtu a limitu“ můžete nakonfigurovat maximální počet projektů na uživatele. A v sekci 'Omezení registrace' můžete přidat název domény svého e-mailu do seznamu povolených.

Po tom všem přejděte dolů a klikněte na 'Uložit'.

A je to. Základní konfigurace GitLabu byla dokončena.

Krok 8 – Testování

Nyní provedeme nějaké testování s naším GitLab, který je hostován samostatně.

Vytvořit nový projekt

Kliknutím na ikonu plus vpravo nahoře vytvoříte nové úložiště projektu.

Zadejte název projektu, popis a nastavení viditelnosti pro váš projekt. A poté klikněte na tlačítko 'Vytvořit projekt'.

Tímto byl projekt vytvořen.

Otestujte první potvrzení

Po vytvoření vašeho projektu (v našem případě howtoforge) budete přesměrováni na stránku projektu. Nyní začněte přidávat nový obsah do úložiště.

Ujistěte se, že je na vašem počítači nainstalován Git.

Pro tento test musíme v počítači nastavit účet Git, což můžete provést pomocí následujících příkazů:

git config --global user.name "hakase"
git config --global user.email "[email protected]"

Naklonujte úložiště a přidejte nový soubor README.md.

git clone https://[email protected]/hakase/howtoforge.git
cd howtoforge/
vim README.md

Budete požádáni o heslo hakase. Zadejte stejné heslo, jaké jsme použili při prvním přístupu do GitLab, a poté přidejte nový obsah do souboru README.md.

Proveďte nové změny v úložišti pomocí následujících příkazů.

git add .
git commit -m 'Add README.md file by hakase-labs'

Dále přesuňte úložiště na server GitLab.

git push origin master

Zadejte své heslo a pokračujte stisknutím klávesy Enter. Měli byste vidět výsledek, jak je uvedeno níže.

Nyní otevřete projekt (v našem případě howtoforge) ve svém webovém prohlížeči a uvidíte, že do úložiště byl přidán nový soubor README.md.

To tedy potvrzuje, že Gitlab je úspěšně nainstalován na Ubuntu CentOS 7 se 4 GB paměti.


Cent OS
  1. Jak nainstalovat a nakonfigurovat Nginx na CentOS 7

  2. Jak nainstalovat a nakonfigurovat Gitlab na CentOS 8

  3. Jak nainstalovat a nakonfigurovat CyberPanel na CentOS 8

  1. Jak nainstalovat a nakonfigurovat Redis na CentOS 7

  2. Jak nainstalovat a nakonfigurovat GitLab na CentOS 7

  3. Jak nainstalovat a nakonfigurovat Redmine na CentOS 7

  1. Jak nainstalovat a nakonfigurovat Redis na CentOS 8

  2. Jak nainstalovat a nakonfigurovat Sambu na CentOS 8

  3. Jak nainstalovat a nakonfigurovat Zabbix na CentOS 7