Hoppa till huvudinnehåll

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

KomponenterMinsta kravRekommenderat
CPU2x 2 GHz4x 2.6+ GHz
RAM4 GB8 GB
Lagring10 GB50+ GB
Bandbredd100 mbit/s (upp & ner)100 mbit/s (upp & ner)

Mjukvara

PlattformAlternativ
OperativsystemUbuntu (20.04, 22.04, 24.04), Debian (10, 11, 12), OpenSUSE (15.5)
DatabasPostgreSQL 14.9+
WebbserverNGINX (medföljer GitLab), Puma 6.4.2+
ÖvrigtRedis 7.x+, Sidekiq 7.3.2+, Prometheus 2.54.1+
info

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.

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
info

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.

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

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.

anteckning

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'] = []
tips

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.

sudo apt-get install -y ufw

Öppna nödvändiga portar

sudo ufw allow http
sudo ufw allow https
sudo ufw allow OpenSSH

Aktivera brandväggen

varning

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.