Installera GitLab på en Linux-server – Hosta din egen DevOps-plattform
De perfekta produkterna för denna guide
Kom igång direkt — beställ rätt produkt och följ denna guide steg för steg.
Introduktion
GitLab är en komplett DevOps-plattform som låter team samarbeta kring kod, automatisera arbetsflöden och hantera hela mjukvaruutvecklingscykeln på ett effektivt sätt. I den här guiden går vi igenom hur du installerar GitLab på en Linux-server.
Installera GitLab med One Click Apps Installer
Du kan installera GitLab direkt via vår One Click Apps Installer i VPS-webbgränssnittet. När du har slutfört den initiala app-installationen, öppna appkatalogen, sök efter GitLab och starta distributionen med dina valda projekt-, miljö- och domäninställningar. Det här ger dig ett snabbt och användarvänligt sätt att deploya och hantera GitLab utan manuell kommandoradskonfiguration, samtidigt som du får fördelarna med integrerad webbaserad hantering, stöd för egna domäner och SSL-certifikat där det är tillgängligt.
Förberedelser
Följande krav rekommenderas av det officiella GitLab Teamet och det är starkt rekommenderat att följa dessa förutsättningar för att undvika problem och krångel längre fram.
Hårdvara
| Komponenter | Minsta krav | Rekommenderat |
|---|---|---|
| CPU | 2x 2 GHz | 4x 2.6+ GHz |
| RAM | 4 GB | 8 GB |
| Lagring | 10 GB | 50+ GB |
| Bandbredd | 100 mbit/s (upp & ner) | 100 mbit/s (upp & ner) |
Mjukvara
| Plattform | Alternativ |
|---|---|
| Operativsystem | Ubuntu (20.04, 22.04, 24.04), Debian (10, 11, 12), OpenSUSE (15.5) |
| Databas | PostgreSQL 14.9+ |
| Webbserver | NGINX (medföljer GitLab), Puma 6.4.2+ |
| Övrigt | Redis 7.x+, Sidekiq 7.3.2+, Prometheus 2.54.1+ |
För den mest exakta och uppdaterade specifikationen, se GitLabs officiella Hårdvarukrav.
En SSH-anslutning måste upprättas för att installera GitLab på din Linux-server. Kolla in vår guide för Initial åtkomst (SSH) för mer info.
När anslutningen är upprättad kan du börja installera de paket som krävs för själva GitLab-installationen.
Steg 1: Installera beroenden
Först måste du installera några beroenden för att kunna köra GitLab-installationen. Använd följande kommandon för att installera nödvändiga paket på din Linux-server.
- Ubuntu
- Debian
- OpenSUSE
Uppdatera paketlistan till senaste version och installera OpenSSH Server-paketet tillsammans med nödvändiga förutsättningar med följande kommando. Det är så din webbpanel för GitLab kommer att hostas.
sudo apt update
sudo apt-get install -y curl openssh-server ca-certificates tzdata perl
Du kan även installera Postfix (SMTP-server) om du vill kunna skicka e-postnotiser via GitLab. Detta är valfritt.
Vill du använda e-postnotiser, installera Postfix med:
sudo apt-get install -y postfix
Uppdatera paketlistan till senaste version och installera OpenSSH Server-paketet tillsammans med nödvändiga förutsättningar med följande kommando. Det är så din webbpanel för GitLab kommer att hostas.
sudo apt update
sudo apt-get install -y curl openssh-server ca-certificates perl
Du kan även installera Postfix (SMTP-server) om du vill kunna skicka e-postnotiser via GitLab. Detta är valfritt.
Vill du använda e-postnotiser, installera Postfix med:
sudo apt-get install -y postfix
Installera OpenSSH Server-paketet tillsammans med nödvändiga förutsättningar med följande kommando. Det är så din webbpanel för GitLab kommer att hostas.
sudo zypper install curl openssh perl
Se sedan till att OpenSSH-daemonen är aktiverad med följande kommandon:
sudo systemctl status sshd
sudo systemctl enable sshd
sudo systemctl start sshd
Se till att brandväggen tillåter nödvändig trafik om du använder firewalld.
Ta reda på om du använder firewalld genom att köra:
sudo systemctl status firewalld
Om du gör det, öppna nödvändiga portar (80 och 443 som standard):
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld
Du kan även installera Postfix (SMTP-server) om du vill kunna skicka e-postnotiser via GitLab. Detta är valfritt.
Vill du använda e-postnotiser, installera Postfix med:
sudo zypper install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
När du installerar Postfix kan en konfigurationsruta dyka upp. Välj då 'Internet Site' och tryck enter. Använd din Linux-servers externa DNS som 'mail name' och tryck enter. Om fler skärmar visas, tryck enter för att acceptera standardinställningarna.
Vill du använda en annan lösning för e-post, hoppa över detta steg och konfigurera en extern SMTP-server efter att GitLab är installerat enligt GitLabs officiella guide.
Steg 2: Installera GitLab
När alla beroenden är installerade är du redo att installera GitLab.
I den här guiden installerar vi GitLab direkt från de officiella paketarkiven.
- Ubuntu & Debian
- OpenSUSE
Följande script lägger till GitLabs arkiv till apt-pakethanteraren:
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
När det är klart kan gitlab-ee-paketet installeras:
sudo apt-get install -y gitlab-ee
Följande script lägger till GitLabs arkiv till Zypper-pakethanteraren:
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
När det är klart kan gitlab-ee-paketet installeras:
sudo zypper install gitlab-ee
När processen är klar ska GitLab vara redo att användas på din Linux-server. Fortsätt till nästa avsnitt där du konfigurerar viktiga inställningar för att säkerställa att servern fungerar som den ska.
Steg 3: Konfigurera GitLab
För att allt ska fungera måste du göra några ändringar i konfigurationsfilen. Börja med att öppna GitLabs konfigurationsfil med din favorittextredigerare. Här använder vi nano som exempel.
sudo nano /etc/gitlab/gitlab.rb
Sök sedan efter raden external_url och skriv in din domän eller IP-adressen till din Linux-server om du inte har en domän att använda med GitLab.
## GitLab URL
##! URL där GitLab kommer vara tillgängligt.
##! För mer info om external_url, se:
##! https://docs.gitlab.com/omnibus/settings/configuration.html#configuring-the-external-url-for-gitlab
##!
##! Obs: Under installation/uppgraderingar används värdet i miljövariabeln
##! EXTERNAL_URL för att fylla i/ersätta detta värde.
##! På AWS EC2 försöker vi även hämta publik hostname/IP
##! från AWS. Mer info:
##! https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-data-retrieval.html
external_url 'http`s`://`Din domän / IPv4-adress till din Linux-server`'
Vi rekommenderar även att du fyller i din e-postadress på raden letsencrypt['contact_emails']. Detta gör att Let's Encrypt kan skicka notiser och kontakta dig angående automatiska och gratis SSL-certifikat.
Du måste använda en domän för att få ett gratis SSL-certifikat från Let's Encrypt. Du kan inte begära ett certifikat direkt till din IP-adress.
################################################################################
# Let's Encrypt-integration
################################################################################
# letsencrypt['enable'] = nil
# letsencrypt['contact_emails'] = [`Din e-post här`] # En array med e-postadresser som kontaktpersoner
# letsencrypt['group'] = 'root'
# letsencrypt['key_size'] = 2048
# letsencrypt['owner'] = 'root'
# letsencrypt['wwwroot'] = '/var/opt/gitlab/nginx/www'
# Se https://docs.gitlab.com/omnibus/settings/ssl/index.html#renew-the-certificates-automatically för mer info
# letsencrypt['auto_renew'] = true
# letsencrypt['auto_renew_hour'] = 0
# letsencrypt['auto_renew_minute'] = nil # Kan vara ett nummer eller cron-uttryck
# letsencrypt['auto_renew_day_of_month'] = "*/4"
# letsencrypt['auto_renew_log_directory'] = '/var/log/gitlab/lets-encrypt'
# letsencrypt['alt_names'] = []
Använd CTRL+W för att söka efter letsencrypt['contact_emails'] och tryck enter så slipper du leta manuellt i hela filen.
När du är klar, tryck CTRL+X följt av Y och Enter för att spara ändringarna.
Slutligen kör du följande kommando för att konfigurera om GitLab med de nya inställningarna:
sudo gitlab-ctl reconfigure
Detta kan ta en stund eftersom GitLab initieras med den uppdaterade konfigurationen och automatiska processer körs. SSL-certifikaten utfärdas också om du angett en domän.
Steg 4: Komma åt webbgränssnittet
Efter initieringen ska servern nu vara åtkomlig via webbläsare. Gå till din webbplats genom att skriva in din domän eller IP-adress så här:
https://[din_domän] ELLER http://[din_ip-adress]
Vid första inloggningen möts du av en inloggningssida.
För att få adminåtkomst vid första inloggningen, logga in som root-användare med användarnamnet root.
Lösenordet hittar du i en fil på din Linux-server. Öppna filen med följande kommando och leta upp fältet Password:
sudo nano /etc/gitlab/initial_root_password
# VARNING: Detta värde gäller endast under följande förutsättningar
# 1. Om det angavs manuellt (via `GITLAB_ROOT_PASSWORD` miljövariabel eller `gitlab_rails['initial_root_password']` i `gitlab.rb`) innan databasen skapades första gången.
# 2. Lösenordet har inte ändrats manuellt via UI eller kommandorad.
#
# Om lösenordet inte fungerar måste du återställa adminlösenordet enligt https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.
Password: `[DITT_LÖSENORD_HÄR]`
# OBS: Denna fil tas bort automatiskt vid första omkonfigureringen efter 24 timmar.
Ange användarnamn och lösenord på inloggningssidan för att komma in i din GitLab-dashboard första gången. Nu kan du börja använda din GitLab-panel på din egen Linux-server.
Vi rekommenderar starkt att du skapar en ny användare och/eller byter lösenord för root-användaren. Det gör du enkelt genom att gå till Admin nere till vänster och välja Översikt->Användare. Där kan du hantera användare för din GitLab-instans.
Valfritt: Sätt upp en brandvägg med ufw
Hoppa över detta om du inte vill konfigurera brandvägg eller redan använder t.ex. firewalld på OpenSUSE. Se till att port 80/443 och port 22 är tillåtna.
Installera ufw
Om du redan har ufw installerat kan du hoppa över detta steg.
- Ubuntu & Debian
- OpenSUSE
sudo apt-get install -y ufw
sudo zypper install ufw
Öppna nödvändiga portar
sudo ufw allow http
sudo ufw allow https
sudo ufw allow OpenSSH
Aktivera brandväggen
Detta blockerar som standard all trafik utom de tillåtna portarna. Se till att vitlistan är korrekt innan du kör detta kommando.
Aktivera brandväggen med:
sudo ufw enable
Avslutning
Grattis, du har nu installerat GitLab! Har du fler frågor eller problem, tveka inte att kontakta vår support som finns tillgänglig varje dag för att hjälpa dig!
Vill du göra fler inställningar rekommenderar vi att du läser Officiell GitLab-dokumentation för nästa steg.