Jak zainstalować i skonfigurować GitLab na Ubuntu 18.04

Photo of author

By maciekx

Wprowadzenie

GitLab to rozbudowana platforma DevOps, która zapewnia szereg instrumentów do zarządzania repozytoriami kodu, rejestrowania i naprawiania błędów oraz ciągłego wdrażania zmian. Zbudowany z wykorzystaniem języka C++ i napisany w Ruby, GitLab charakteryzuje się wysoką skalowalnością i wszechstronnością, co czyni go idealnym wyborem dla zespołów programistycznych różnej wielkości.

W niniejszym poradniku przedstawimy szczegółowy proces instalacji i konfiguracji platformy GitLab na serwerze z systemem Ubuntu 18.04. Przyjmujemy, że czytelnik posiada podstawową wiedzę na temat systemów Linux i dysponuje uprawnieniami administratora (root) na swoim serwerze.

Niezbędne wymagania wstępne

Przed przystąpieniem do instalacji GitLab, upewnij się, że na twoim serwerze zainstalowane są następujące komponenty:

  • PostgreSQL w wersji 9.6 lub nowszej
  • Redis w wersji 4.0 lub nowszej
  • Nginx w wersji 1.10 lub nowszej
  • Git w wersji 2.12 lub nowszej

Instalacja zależności

Aby zainstalować niezbędne pakiety, wykonaj poniższe polecenia w terminalu:

sudo apt update
sudo apt install -y curl ca-certificates gnupg apt-transport-https lsb-release

Dodanie repozytorium GitLab

Kolejnym krokiem jest dodanie oficjalnego repozytorium GitLab do listy repozytoriów systemowych:

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

Instalacja GitLab

Aby zainstalować GitLab, wprowadź w terminalu następujące polecenie:

sudo apt install -y gitlab-ce

Konfiguracja

Utworzenie konta administratora

Po zakończeniu procesu instalacji konieczne jest utworzenie konta administratora, które będzie miało dostęp do wszystkich funkcji platformy GitLab:

sudo gitlab-ctl reconfigure

Konfiguracja GitLab

Teraz należy dostosować ustawienia GitLab do indywidualnych preferencji. Dokonuje się tego poprzez edycję pliku konfiguracyjnego /etc/gitlab/gitlab.rb. Poniżej przedstawiono najważniejsze parametry konfiguracji:

  • external_url: Adres URL twojego serwera GitLab.
  • gitlab_rails[’db_adapter’]: Typ adaptera bazy danych (domyślnie PostgreSQL).
  • gitlab_rails[’db_database’]: Nazwa bazy danych GitLab.
  • gitlab_rails[’db_username’]: Nazwa użytkownika bazy danych GitLab.
  • gitlab_rails[’db_password’]: Hasło użytkownika bazy danych GitLab.

Ponowne uruchomienie GitLab

Po wprowadzeniu zmian w pliku konfiguracji, konieczne jest ponowne uruchomienie GitLab, aby zmiany zaczęły obowiązywać:

sudo systemctl restart gitlab-runsvdir
sudo systemctl restart nginx

Dostęp do GitLab

Aby uzyskać dostęp do GitLab, uruchom przeglądarkę internetową i wprowadź adres URL swojego serwera. Zostaniesz poproszony o zalogowanie się przy użyciu utworzonego wcześniej konta administratora.

Konfiguracja domeny

Konfiguracja rekordów DNS

W przypadku, gdy chcesz uzyskać dostęp do GitLab za pośrednictwem nazwy domenowej, konieczna jest konfiguracja rekordów DNS dla twojej domeny. Utwórz rekord typu „A” wskazujący na adres IP twojego serwera GitLab oraz rekord typu „CNAME” wskazujący na domenę GitLab.

Konfiguracja GitLab z użyciem domeny

Po ustawieniu rekordów DNS, otwórz plik /etc/gitlab/gitlab.rb i dodaj następującą opcję, zastępując „twojadomena.tld” swoją właściwą domeną:

external_url "https://twojadomena.tld"

Ponowne uruchomienie GitLab z domeną

Po zapisaniu modyfikacji w pliku konfiguracyjnym, ponownie uruchom GitLab:

sudo systemctl restart gitlab-runsvdir
sudo systemctl restart nginx

Włączanie HTTPS

Generowanie certyfikatu SSL

Aby aktywować połączenie HTTPS, potrzebny jest certyfikat SSL dla twojej domeny. Możesz go wygenerować za pomocą narzędzia OpenSSL, wykonując poniższe polecenie:

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/gitlab/ssl/gitlab.key -out /etc/gitlab/ssl/gitlab.crt

Konfiguracja Nginx dla HTTPS

Następnie skonfiguruj serwer Nginx, aby korzystał z wygenerowanego certyfikatu SSL. W tym celu, otwórz plik /etc/nginx/sites-available/gitlab i wstaw następujący blok konfiguracji, zastępując „twojadomena.tld” swoją nazwą domenową:


server {
listen 443 ssl;
server_name twojadomena.tld;
ssl_certificate /etc/gitlab/ssl/gitlab.crt;
ssl_certificate_key /etc/gitlab/ssl/gitlab.key;
location / {
proxy_pass http://localhost:8080;
}
}

Ponowne uruchomienie Nginx z HTTPS

Po zapisaniu zmian w pliku konfiguracyjnym, ponownie uruchom serwer Nginx:

sudo systemctl restart nginx

Podsumowanie

W tym przewodniku przedstawiliśmy krok po kroku proces instalacji i konfiguracji GitLab na serwerze Ubuntu 18.04. Omówiliśmy instalację oprogramowania, konfigurację podstawowych parametrów, konfigurację domeny oraz włączenie protokołu HTTPS. Teraz, dzięki GitLab, możesz w efektywny sposób zarządzać repozytoriami kodu, monitorować i naprawiać błędy oraz wdrażać zmiany w sposób ciągły i zautomatyzowany.

FAQ

P1. Czy mogę zainstalować GitLab na innym systemie operacyjnym niż Ubuntu 18.04? Tak, GitLab można z powodzeniem instalować na wielu innych systemach operacyjnych, takich jak Debian, CentOS i RHEL.
P2. Czy mogę używać GitLab bez bazy danych PostgreSQL? Tak, GitLab współpracuje również z innymi bazami danych, takimi jak MySQL i MariaDB.
P3. Czy mogę włączyć uwierzytelnianie dwuskładnikowe dla GitLab? Tak, GitLab oferuje opcję włączenia uwierzytelniania dwuskładnikowego, co zwiększa bezpieczeństwo twojego konta.
P4. Jak zaktualizować GitLab do najnowszej wersji? Aby zaktualizować GitLab, wykonaj w terminalu następujące polecenia:
sudo apt update
sudo apt upgrade gitlab-ce
P5. Jak odinstalować GitLab? Aby odinstalować GitLab, wprowadź w terminalu następujące polecenie:
sudo apt remove -y gitlab-ce
P6. Jak rozwiązać problemy z GitLab? W przypadku problemów z GitLab, skorzystaj z oficjalnej dokumentacji dotyczącej rozwiązywania problemów:
https://docs.gitlab.com/omnibus/settings/troubleshooting.html
P7. Jak uzyskać wsparcie dla GitLab? GitLab oferuje różne formy wsparcia, w tym forum społecznościowe, system śledzenia błędów oraz płatne plany wsparcia dla użytkowników korporacyjnych.
P8. Jakich funkcji mogę się spodziewać w GitLab? GitLab posiada rozbudowany zestaw funkcji, takich jak zarządzanie repozytoriami kodu, śledzenie błędów, continuous integration, continuous delivery, zarządzanie projektami i integrację z innymi narzędziami DevOps.
P9. Czy GitLab jest rozwiązaniem typu open source? Tak, GitLab Community Edition jest dostępny na licencji open source i można z niego korzystać bezpłatnie.
P10. Jakie są zalety korzystania z GitLab? GitLab oferuje liczne korzyści, w tym kompleksowy zbiór narzędzi DevOps, prostotę instalacji, wysoką skalowalność oraz elastyczność w dopasowaniu do indywidualnych potrzeb.

newsblog.pl