GitLab installeren op Debian 12 of 11

GitLab is een uitgebreid DevOps-platform dat een breed scala aan functies biedt voor versiebeheer, continue integratie, implementatie en projectbeheer. Het integreert verschillende fasen van de DevOps-levenscyclus in één enkele applicatie, waardoor teams efficiënt en efficiënt kunnen samenwerken. GitLab Community Edition (CE) is de open-sourceversie van GitLab en biedt krachtige tools voor het beheren van repository's, het volgen van problemen en het automatiseren van CI/CD-pijplijnen.

Om GitLab CE op Debian 12 of 11 te installeren, kunt u het officiële GitLab Bash-script gebruiken om de GitLab CE APT-repository in te stellen en vervolgens de software te installeren en configureren. Deze gids leidt u door het hele proces en zorgt ervoor dat u een robuuste GitLab-installatie op uw Debian-systeem hebt.

Update Debian vóór de installatie van Gitlab

Het up-to-date houden van uw Debian-besturingssysteem is van cruciaal belang om de stabiliteit en veiligheid ervan te behouden. Om ervoor te zorgen dat alle bestaande pakketten op uw Debian-systeem up-to-date zijn, wordt aanbevolen een update uit te voeren om de nieuwste beveiligingsupdates en bugfixes te bieden, waardoor de stabiliteit en betrouwbaarheid van uw systeem worden gegarandeerd.

U kunt uw Debian-besturingssysteem eenvoudig bijwerken door de volgende opdracht uit te voeren:

sudo apt update && sudo apt upgrade 

Installeer de vereiste pakketten voor GitLab

Ervoor zorgen dat alle afhankelijkheden voor GitLab zijn geïnstalleerd, is een cruciale stap in het installatieproces. Deze afhankelijkheden zijn noodzakelijke componenten waar GitLab op vertrouwt om correct te functioneren. Gelukkig is het installeren van deze afhankelijkheden een eenvoudig proces.

U kunt ze eenvoudig installeren door de terminal te openen en de volgende opdracht uit te voeren:

sudo apt install curl ca-certificates apt-transport-https tzdata perl

Importeer GitLab CE APT-repository

Standaard is GitLab niet beschikbaar in de standaardopslagplaatsen van Debian. Dit betekent dat je handmatig een repository moet maken om GitLab te installeren. GitLab biedt echter een APT-script om te helpen bij dit proces, waardoor het voor gebruikers gemakkelijker wordt om het platform te installeren. Met dit script kunt u een GitLab-repository maken, waarmee u GitLab kunt installeren met behulp van de standaard APT-pakketbeheerder.

Om het script te downloaden, voert u de volgende opdracht in uw terminal in:

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

Zodra u dit commando uitvoert, zal het script de GitLab-repository downloaden en toevoegen aan uw Debian-systeem. Het zal ook de pakketlijst bijwerken, zodat u GitLab kunt installeren met behulp van de standaard APT-pakketbeheerder.

Voltooi de GitLab-installatie via APT Command

De volgende stap is het installeren van GitLab. Houd er rekening mee dat het script de opdracht “apt update” al heeft gebruikt om de nieuw gemaakte en gewijzigde repository te synchroniseren. Als dat klaar is, kunt u nu doorgaan met het uitvoeren van de installatieopdracht door het volgende uit te voeren:

sudo apt install gitlab-ce

Met deze opdracht installeert u de GitLab Community Edition (CE), de gratis en open-source versie van GitLab. Het installatieproces kan enige tijd duren, afhankelijk van uw internetsnelheid en systeemspecificaties.

Voorbeelduitvoer als de installatie van GitLab succesvol is op Debian:

Configureer GitLab

Om GitLab op Debian te configureren, moeten verschillende stappen zorgvuldig worden gevolgd. In dit gedeelte wordt het proces stap voor stap beschreven, inclusief het configureren van de hostnaam, het instellen van de firewall en het configureren van e-mailinstellingen.

Configureer de hostnaam

Om toegang te krijgen tot uw GitLab-instantie is het van cruciaal belang dat u de hostnaam voor uw GitLab-server configureert, dus kies een naam die gemakkelijk te onthouden en toegankelijk is. Volg deze stappen om de hostnaam te configureren:

Open het GitLab-configuratiebestand met een teksteditor:

sudo nano /etc/gitlab/gitlab.rb

Zoek de external_url-instelling en vervang de voorbeeld-URL door de gewenste hostnaam:

external_url 'https://gitlab.example.com'

Sla het bestand op en sluit de teksteditor af.

Configureer nu GitLab opnieuw om de wijzigingen toe te passen:

sudo gitlab-ctl reconfigure

Stel UFW-firewall in voor Gitlab

GitLab gebruikt standaard poort 80 voor HTTP en poort 443 voor HTTPS. Het is van cruciaal belang om uw firewall te configureren om verkeer op deze poorten toe te staan ​​en ervoor te zorgen dat uw GitLab-instantie toegankelijk is.

Volg deze stappen om de firewall in te stellen:

Installeer eerst de UFW-firewall, aangezien deze niet standaard op Debian wordt geïnstalleerd, met het volgende commando:

sudo apt install ufw

Zodra de installatie is voltooid, schakelt u vervolgens de UFW-firewall in met de volgende opdracht:

sudo ufw enable

Open het firewallconfiguratiebestand met een teksteditor:

sudo nano /etc/ufw/applications.d/gitlab

Kopieer en plak de volgende regels in het bestand:

[GitLab]
title=GitLab
description=GitLab application
ports=80,443/tcp

Sla het bestand op en sluit de teksteditor af.

Schakel de GitLab-applicatie in de firewall in:

sudo ufw app update GitLab
sudo ufw allow GitLab

Configureer e-mailinstellingen

GitLab gebruikt e-mailmeldingen om gebruikers te informeren over projectactiviteiten, zoals nieuwe problemen, samenvoegverzoeken en opmerkingen.

Volg deze stappen om e-mailinstellingen te configureren:

Open het GitLab-configuratiebestand met een teksteditor:

sudo nano /etc/gitlab/gitlab.rb

Zoek de instelling gitlab_rails['smtp_enable'] en stel deze in op true:

gitlab_rails['smtp_enable'] = true

Voeg de volgende regels toe aan het bestand om de SMTP-serverinstellingen voor uw e-mailprovider, zoals Gmail, te configureren:

gitlab_rails['smtp_address'] = "smtp.gmail.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "example@gmail.com"
gitlab_rails['smtp_password'] = "your_password"
gitlab_rails['smtp_domain'] = "smtp.gmail.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true

Sla het bestand op en sluit de teksteditor af.

Configureer GitLab opnieuw om de wijzigingen toe te passen:

sudo gitlab-ctl reconfigure

Het is belangrijk op te merken dat na het uitvoeren van het “gitlab-ctl reconfigure” commando, je kunt zien dat de terminaluitvoer eindigt met het volgende bericht:

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.

Om het root-wachtwoord (GitLab) te bekijken, voert u de volgende opdracht uit in uw terminal:

sudo cat /etc/gitlab/initial_root_password

Als u deze opdracht uitvoert, wordt het root-wachtwoord in de terminal weergegeven. Het is van cruciaal belang om dit wachtwoord veilig te houden en niet te delen met ongeautoriseerde gebruikers.

Als u het rootwachtwoord opnieuw moet instellen, kunt u de volgende opdracht gebruiken:

sudo gitlab-rake "gitlab:password:reset[root]"

Na het uitvoeren van deze opdracht wordt het root-wachtwoord opnieuw ingesteld op een willekeurige reeks die wordt weergegeven in de terminaluitvoer. Het is essentieel om te onthouden dat het opnieuw instellen van het root-wachtwoord alle bestaande en persoonlijke toegangstokens ongeldig maakt, zodat gebruikers nieuwe moeten maken nadat ze het wachtwoord opnieuw hebben ingesteld.

Om veiligheidsredenen wordt aanbevolen dat u het rootwachtwoord zo snel mogelijk na de eerste installatie wijzigt in een sterk en uniek wachtwoord en vermijdt het gebruik van het standaardwachtwoord. Je kunt het root-wachtwoord wijzigen door in te loggen op de GitLab-webinterface, naar “Gebruikersinstellingen”> “Account” te gaan en de optie “Wachtwoord wijzigen” te selecteren.

Toegang tot de GitLab-gebruikersinterface

Zodra de backend-configuratie is voltooid, is het tijd om in te loggen en toegang te krijgen tot GitLab. Om dit te bereiken, opent u het domeinpad dat aan GitLab is toegewezen in het configuratiebestand.

https://gitlab.example.com

Log vervolgens in op GitLab met de gebruikersnaam “root” en het wachtwoord dat je tijdens de installatie hebt ontvangen. Zoals vermeld in de wachtwoordafdruk van de vorige sectie, was het wachtwoord van de gids “4zB2mbBLCcRLRAkv3qHfmSZULJ/6ocJNe2XK8zNx9nU=” in de afbeelding.

U bent succesvol ingelogd als root-account en komt op de standaard landingspagina terecht.

Aanvullende tips

Hieronder staan ​​enkele aanbevelingen voor het beveiligen, aanpassen of andere algemene tips voor de eerste keer wanneer u voor het eerst inlogt op de GitLab-gebruikersinterface:

  • Wijzig het standaardwachtwoord: Om de beveiliging van uw GitLab-instantie te verbeteren, is het van cruciaal belang om het standaardwachtwoord van de rootgebruiker te wijzigen. Log in bij GitLab met de standaard gebruikersnaam en het standaardwachtwoord, navigeer naar “Gebruikersinstellingen”> “Wachtwoord” en voer uw nieuwe wachtwoord in.
  • Tweefactorauthenticatie (2FA) instellen: Het toevoegen van een authenticatiefactor, zoals een code die naar je telefoon wordt gestuurd of door een app wordt gegenereerd, aan het inlogproces is een extra beveiligingslaag die 2FA biedt. Om 2FA in GitLab in te schakelen, navigeert u naar “Gebruikersinstellingen”> “Account”> “Twee-Factor Authenticatie” en volgt u de instructies.
  • Maak een project aan: Om een ​​nieuw project in GitLab aan te maken, gaat u naar de pagina “Projecten” en klikt u op de knop “Nieuw project”. U kunt een leeg project maken of een bestaand project uit een Git-repository importeren.
  • Pas de gebruikersinterface aan: GitLab biedt verschillende aanpassingsopties, zoals het wijzigen van het thema, het toevoegen van een aangepast logo en het configureren van de navigatiebalk. Navigeer naar “Admin Area”> “Instellingen” en selecteer de juiste opties om de gebruikersinterface aan te passen.
  • Toegangscontrole configureren: Met de krachtige toegangscontrolefuncties van GitLab kunt u bepalen wie toegang heeft tot uw projecten en wat ze kunnen doen. Navigeer naar “Projectinstellingen”> “Leden” en voeg leden met verschillende toegangsniveaus toe of verwijder ze om de toegangscontrole te configureren.
  • Gebruik GitLab CI/CD: De krachtige CI/CD-mogelijkheden van GitLab automatiseren het testen en implementeren van uw code. Configureer CI/CD-pijplijnen door een “.gitlab-ci.yml”-bestand te maken in de hoofdmap van uw project en definieer de fasen en taken voor uw pijplijn.
  • GitLab Runner instellen: GitLab Runner is een lichtgewicht agent die CI/CD-taken uitvoert en de resultaten terugstuurt naar GitLab. Volg de instructies in de GitLab-documentatie om GitLab Runner op uw Debian-systeem te installeren en configureren.
  • Maak een back-up van uw GitLab-instantie: Maak regelmatig een back-up van uw GitLab-instantie om gegevensverlies te voorkomen in geval van hardwarestoringen of andere rampen. Voer het commando “gitlab-rake gitlab:backup:create” uit in je terminal om een ​​back-up te maken van je GitLab-instantie.

Maak Cronjob voor GitLab Auto Backup

Het opzetten van een cronjob voor de automatische back-up van GitLab op Debian is essentieel om de veiligheid van uw gegevens te garanderen. Een cronjob is een geplande taak die automatisch met specifieke tussenpozen wordt uitgevoerd om een ​​back-up van uw GitLab-instantie uit te voeren. Volg deze stappen om een ​​cronjob te maken voor de automatische back-up van GitLab op Debian.

Maak een Gitlab-back-upscript

De eerste stap is het maken van een back-upscript om de back-up van uw GitLab-instantie uit te voeren. Volg deze stappen:

Maak met behulp van een teksteditor een nieuw bestand voor uw back-upscript. Hier is een voorbeeld:

sudo nano /usr/local/bin/gitlab-backup.sh

Plak de volgende code in het bestand:

#!/bin/bash

BACKUP_DIR=/var/opt/gitlab/backups
TIMESTAMP=$(date +%s)

sudo gitlab-rake gitlab:backup:create

sudo cp ${BACKUP_DIR}/$(ls -t ${BACKUP_DIR} | head -1) ${BACKUP_DIR}/gitlab_backup_${TIMESTAMP}.tar
  • Sla het bestand op en sluit de teksteditor af.

Dit script genereert een backup van uw GitLab-instantie door de opdracht gitlab-rake gitlab:backup:create uit te voeren. Nadat de backup is gemaakt, wordt de laatste backup gedupliceerd naar een nieuw bestand met een tijdstempel in de bestandsnaam.

Machtigingen en eigendom instellen

De volgende stap is het instellen van de juiste machtigingen en eigendom voor het back-upscript om ervoor te zorgen dat de cronjob het kan uitvoeren. Volg deze stappen:

Stel de eigenaar van het back-upscript in op de gebruiker die aan GitLab is gekoppeld:

sudo chown git:git /usr/local/bin/gitlab-backup.sh

Stel de machtigingen van het back-upscript in om uitvoering mogelijk te maken:

sudo chmod +x /usr/local/bin/gitlab-backup.sh

Een cronjob maken

De volgende stap is het maken van een cronjob om het back-upscript te plannen zodat het regelmatig wordt uitgevoerd. Volg deze stappen:

Volg deze stappen om het crontab-configuratiebestand voor de GitLab-gebruiker te openen:

sudo crontab -u git -e

Om te plannen dat het back-upscript elke dag om 01:00 uur wordt uitgevoerd, voegt u de volgende regel toe aan het crontab-configuratiebestand voor de GitLab-gebruiker:

0 1 * * * /path/to/backup/script.sh

Sla het bestand op en sluit de teksteditor af.

Deze cronjob voert het back-upscript elke dag om 01:00 uur automatisch uit, wat resulteert in een nieuw back-upbestand met een tijdstempel in de bestandsnaam.

De Cronjob testen

U kunt de cronjob-functies correct verifiëren door het back-upscript handmatig uit te voeren en ervoor te zorgen dat het back-upbestand zonder fouten wordt gegenereerd. Om deze test uit te voeren, voert u de volgende opdracht in uw terminal in:

sudo /usr/local/bin/gitlab-backup.sh

Dit commando zal een nieuw back-upbestand genereren in de map “/var/opt/gitlab/backups”. De bestandsnaam bevat een tijdstempel die aangeeft wanneer de back-up is gemaakt.

GitLab Terminal-opdrachten

GitLab-ctl is een opdrachtregelprogramma voor het beheren van GitLab op Debian. Het biedt een reeks terminalopdrachten voor onder meer het starten, stoppen, herstarten en beheren van GitLab-services. Hier is een gedetailleerd gedeelte over GitLab-ctl-terminalopdrachten, samen met voorbeeldopdrachten en uitvoer met uitleg.

GitLab-services starten en stoppen

Gebruik de volgende opdrachten om GitLab-services te starten en te stoppen:

Start alle GitLab-services:

sudo gitlab-ctl start

Stop alle GitLab-services:

sudo gitlab-ctl stop

Start alle GitLab-services opnieuw:

sudo gitlab-ctl restart

GitLab-services opnieuw laden:

sudo gitlab-ctl reload

Met deze opdrachten worden alle GitLab-services gestart, gestopt, opnieuw opgestart of opnieuw geladen. De uitvoer geeft aan welke services worden gestart of gestopt en of de bewerking succesvol was.

De status van GitLab-services controleren

Gebruik de volgende opdracht om de status van GitLab-services te controleren:

sudo gitlab-ctl status

Met deze opdrachten worden alle GitLab-services gestart, gestopt, opnieuw opgestart of opnieuw geladen. Na het uitvoeren van de opdracht zal de uitvoer laten zien welke services getroffen zijn en of de bewerking is geslaagd.

Back-up maken en herstellen van GitLab-gegevens

U kunt een back-up van GitLab-gegevens maken met behulp van de volgende opdracht:

Maak een back-up van GitLab-gegevens:

sudo gitlab-rake gitlab:backup:create

Met de opgegeven opdracht wordt een back-upbestand gemaakt dat alle GitLab-gegevens bevat, zoals opslagplaatsen, gebruikersgegevens en configuratiebestanden. Het back-upbestand zal worden opgeslagen in de map: “/var/opt/gitlab/backups”.

Herstel een back-up van GitLab-gegevens:

sudo gitlab-rake gitlab:backup:restore BACKUP=<backup_file>

Met deze opdracht kunt u een back-up van GitLab-gegevens herstellen vanuit een specifiek back-upbestand. Het back-upbestand moet zich in de map “var/opt/gitlab/backups” bevinden, of u kunt het volledige pad naar het back-upbestand aangeven.

De GitLab-configuratie controleren

U kunt het volgende commando gebruiken om de configuratie van GitLab te controleren:

sudo gitlab-rake gitlab:check

Deze opdracht kan scannen op fouten of waarschuwingen in de GitLab-configuratie, inclusief verouderde versies, ontbrekende afhankelijkheden en verkeerd geconfigureerde instellingen. De uitvoer bevat een samenvatting van de scanresultaten en gedetailleerde informatie over eventuele gedetecteerde problemen.

GitLab-logboeken controleren

Hier leest u hoe u GitLab-logboeken kunt controleren met behulp van de volgende opdrachten:

Bekijk de GitLab-logboeken:

sudo gitlab-ctl tail gitlab-rails/production.log

U kunt de volgende opdracht gebruiken om de laatste tien regels van het GitLab-productielogboek te bekijken, waarin gebruikersacties, waarschuwingen en fouten worden beschreven.

Bekijk de GitLab NGINX-logboeken:

sudo gitlab-ctl tail nginx/gitlab_access.log

Deze opdracht toont de laatste tien regels van het GitLab NGINX-toegangslogboek dat details bevat over HTTP-verzoeken en -antwoorden.

Bekijk de GitLab PostgreSQL-logboeken:

sudo gitlab-ctl tail postgresql/current

Met deze opdracht worden de laatste tien regels van het GitLab PostgreSQL-logboek weergegeven, dat informatie bevat over databasequery's en transacties.

Conclusie

Nu GitLab CE met succes op uw Debian-systeem is geïnstalleerd met behulp van het officiële installatiescript, kunt u optimaal profiteren van de krachtige DevOps-mogelijkheden. Deze methode zorgt ervoor dat u over de nieuwste versie beschikt en eenvoudig toegang heeft tot updates. Onderhoud en update uw GitLab-instantie regelmatig om te profiteren van de nieuwste functies en beveiligingsverbeteringen. Geniet van de naadloze integratie- en samenwerkingstools die GitLab CE biedt voor uw ontwikkelingsprojecten.

Joshua James
Volg mij
Laatste berichten van Joshua James (alles zien)

Plaats een reactie