Własny serwer GitLab – elastyczność, prostota i prywatność, automatyczna instalacja repozytoriów w UniCloud

Automatyczna instalacja repozytoriów w UniCloud

Własny serwer GitLab – elastyczność, prostota i prywatność

Pełna kontrola nad repozytoriami Git może być wymagana, jeśli nie chcemy, aby nasze narzędzia obsługiwały firmy zewnętrzne. Własna instalacja GitLab pozwala na większą kontrolę. Można dokonać instalacji całego środowiska na serwerze dedykowanym lub skorzystać z przygotowanego rozwiązania.

Repozytoria Git są ważną częścią procesu rozwoju i dostarczania aplikacji, zazwyczaj obsługiwane przez GitHub czy BitBucket. Poniżej zaprezentujemy, jak
w prosty sposób uruchomić swoją instalację GitLab w chmurze wykorzystując możliwości platformy PaaS. Dzięki jednej aplikacji uzyskamy większą szybkość działania i współbieżny DevOps na cały cykl życia oprogramowania [1]. Takie rozwiązanie odsuwa obawy związane z bezpieczeństwem prywatnego kodu hostowanego w firmie zewnętrznej.

Instalacja przeprowadzona zostanie z wykorzystaniem repozytorium [2], licencjonowanego przez MIT i prowadzonym licznymi forkami. Chmura UniCloud umożliwia rozszerzenie repozytorium o dodatkowe funkcje, takie jak elastyczne udostępnianie zasobów
z automatycznym skalowaniem pionowym, szyfrowanie SSL, wstrzykiwanie dynamicznych zmiennych środowiskowych (nazwa środowiska i domeny, tokeny bezpieczeństwa, hasła) [3]. Wszystkie te opcje pakowane są w z serwerem GitLab w manifest [4] zapewniający automatyzację instalacji w chmurze. Domyślna topologia składa się z dwóch węzłów Docker Engine:

pierwszy zawiera serwer Git i rejestry kontenerów, w drugim zawiera się GitLab Runner.

Rysunek 1: Architektura rozwiązania

Instalacja serwera GitLab

Uruchom pulpit UniCloud [5], znajdź GitLab na Liście gotowych aplikacji i naciśnij Zainstaluj

 

Rysunek 2: Wybór aplikacji

Można też skorzystać z manifestu [4] i zaimportować go wybierając w panelu przycisk Import.

Rysunek 3: Instalacja aplikacji

Wystarczy wpisać nazwę środowiska i nacisnąć Zainstaluj.

Po zakończeniu instalacji otrzymamy powiadomienie o danych logowania do panelu administracyjnego dostępnego w przeglądarce.

Rysunek 4: Zakończenie instalacji

Skalowanie węzłów w poziomie

Wraz z rozwojem zespołu obciążenie serwera może wzrastać, przydatna wówczas staje się możliwość dodawania kolejnych węzłów bez ręcznego rejestrowania ich na serwerze. Po instalacji mamy dostępny jeden węzeł:

Rysunek 5: Panel serwera po instalacji

Kolejne węzły typu Runner dodaje się w panelu UniCloud [5], zmieniając topologię środowiska:

Rysunek 6: Panel zmiany topologii środowiska

Wybierając kontener Docker-ce, w sekcji Skalowanie poziome można zmienić ilość kontenerów Runner. Zastosuj zmiany.

Rysunek 7: Dodanie kontenerów Docker

Dodaliśmy dwa nowe kontenery Runner

Rysunek 8: Topologia po zmianie ilości węzłów

 

Zostały one automatycznie zarejestrowane na serwerze Git

Rysunek 9: Panel serwera po rekonfiguracji

Możemy teraz importować nasze projekty z GitHub na własny serwer GitLab, tworzyć nowe projekty, zarządzać zespołem, aktualizować serwer etc.

Aktualizacja serwera GitLab

Pakiet wyposażony jest w procedurę aktualizacji serwera GitLab. Podczas aktualizacji sprawdzana jest dostępność nowej wersji w repozytorium [4]. Aktualizacja dostępna jest w dodatkach panelu UniCloud [5]:

Rysunek 10: Aktualizacja serwera

 

Info:

[1] GitLab:
https://about.gitlab.com/product/

[2] Repozytorium GitLab:
https://github.com/sameersbn/docker-gitlab

[3] Jelastic, Blog:
https://jelastic.com/blog/private-gitlab-server-auto-installation/

[4] Manifest serwera GitLab:
https://github.com/jelastic-jps/gitlab/blob/master/manifest.jps

[5] Panel UniCloud:
https://app.unicloud.pl

 

Autor:

Piotr Niemcewicz pracuje jako inżynier w Centrum Danych i Usług Chmurowych Asseco Data Systems S.A., gdzie zajmuje się projektowaniem i wsparciem podczas wdrażania systemów.

 

 

 

[[[["field6","contains","@"]],[["show_fields","field30"]],"and"]]
1 Step 1
Zapytaj eksperta
imię i nazwisko
telefon
pytanie / temat rozmowy
0 /

Informujemy, iż Państwa dane osobowe są przetwarzane przez administratora, którym jest Asseco Cloud sp. z o. o. z siedzibą w Szczecinie, ul. Królowej Korony Polskiej 21, 70-486 Szczecin. Przetwarzamy Państwa dane w celu: przygotowanie odpowiedzi na złożone zapytanie oraz przesyłania informacji marketingowych za pomocą środków komunikacji elektronicznej. W związku z przetwarzaniem Państwa danych, posiadacie prawa do: dostępu, sprostowania, usunięcia, przenoszenia danych, ograniczenia przetwarzania i prawo do cofnięcia zgody. Z pełną treścią informacji dotyczących przetwarzania Państwa danych osobowych, w tym o przysługujących prawach i ich zakresie możecie się Państwo zapoznać pod adresem: https://asseco.cloud/dane-osobowe/

Previous
Next

Dell
Cisco
vmware
Emc2
Certum
Microsoft
IBM

 

Szanowna Użytkowniczko/Szanowny Użytkowniku

 

Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką prywatności. Przeglądanie strony jest jednoznaczne z akceptacją polityki prywatności.

Polityka prywatności