GitLab in einem DigitalOcean Droplet installieren
Dieser Artikel ist bereits über 3 Jahre alt. Die Inhalte sind wahrscheinlich bereits überholt und nicht mehr aktuell.
GitLab ist ein Open-Source Version Control System (VCS), ähnlich wie GitHub, aber zum Selber-Hosten und in der Community Edition ohne Einschränkungen völlig kostenfrei. Dieses lässt sich mit einer kleinen Anpassung sehr einfach in dem kleinsten Droplet bei DigitalOcean, einem günstigen Cloud-vServer-Hoster, installieren.
Hinweis: Auch wenn es GitLab bereits als fertiges Application-Package bei DigitalOcean zu finden gibt, sollten Sie die hier gezeigte Anpassung trotzdem vornehmen, falls Sie ein Droplet mit weniger als 2 GB RAM verwenden wollen.
Wo liegt das Problem?
GitLab ist eine sehr ressourcenlastige Anwendung und braucht daher auch entsprechend gute Hardware. Empfohlen werden neben einer Mehrkern-CPU auch 2GB RAM, die aber erst bei einem mittleren Droplet anzutreffen sind. Da DigitalOcean aber ausschließlich auf SSDs als Datenspeicher setzt, bietet sich eine Swap-Datei als “RAM-Ersatz” an.
Das Droplet einrichten
Ein Droplet ist im Prinzip eine vServer-Instanz, die Sie mit wenigen Klicks in unter einer Minute einrichten können. Dazu klicken Sie in Ihrem DigitalOcean-Account auf “Create Droplet”, geben dem Droplet einen Namen, wählen die gewünschten Spezifikationen (die kleinste Konfiguration reicht aus), den Standort (Amsterdam 3 ist aus Deutschland gut erreichbar), das Betriebssystem (Ubuntu 14.04 LTS x64 wird empfohlen) und eventuell auch einen bereits eingerichteten SSH-Key aus. Mit dem Klick auf “Create Droplet” wird Ihr vServer nun eingerichtet.
Melden Sie sich nun mit einem SSH-Client (unter Windows z.B. mit PuTTY) an Ihrem Droplet mit dem Nutzernamen root
und dem per E-Mail erhaltenen Passwort / dem SSH-Key an und aktualisieren Sie Ihre Installation:
apt-get update
apt-get dist-upgrade
Swap-Datei erstellen und aktivieren
Zunächst erstellen Sie eine 4GB große Swap-Datei unter /var/swap.img
:
dd if=/dev/zero of=/var/swap.img bs=1024 count=4M
mkswap /var/swap.img
Tragen Sie diese Datei nun in der fstab
-Datei ein, damit die Swap-Datei beim Starten automatisch eingehangen und genutzt wird:
# fstab im Editor öffnen
nano /etc/fstab
# Swap-Datei in dieser Datei eintragen (Speichern mit Strg-O und Schließen mit Strg-X)
/var/swap.img swap swap sw 0 0
Anschließend aktivieren Sie die Swap-Datei manuell, um den Neustart umgehen zu können:
swapon /var/swap.img
GitLab installieren
Die eigentliche GitLab-Installation erweist sich als sehr einfach. Diese Anleitung bezieht sich auf die Version 7.7 und kann daher veraltet sein. Prüfen Sie daher am besten vor der Installation unter https://about.gitlab.com/downloads/, ob sich nicht etwas am Installationsprozess verändert hat.
Installieren Sie zunächst den SSH-Server und den E-Mail Server “Postfix”, um die Vorbereitungen abzuschließen:
apt-get install openssh-server postfix
Wählen Sie im Postfix-Installationsdialog die Option “Internet Site” aus und geben Sie als FQDN die Domain an, unter der Ihre GitLab-Instanz erreichbar sein soll (z.B. mein-gitlab.com
).
Nun laden Sie das Installationspaket herunter und installieren dieses anschließend:
wget https://downloads-packages.s3.amazonaws.com/ubuntu-14.04/gitlab_7.7.0-omnibus.5.4.0.ci-1_amd64.deb
sudo dpkg -i gitlab_7.7.0-omnibus.5.4.0.ci-1_amd64.deb
Öffnen Sie nun mit dem Editor die GitLab-Konfiguration unter /etc/gitlab/gitlab.rb
und passen Sie die URL (und falls gewünscht auch weitere Einstellungen) an.
Zum Abschluss starten Sie die Initialisierung der GitLab-Instanz mit folgendem Befehl:
gitlab-ctl reconfigure
Letze Schritte
Sie finden Ihre Installation nun unter der von Ihnen angegebenen (und eingerichteten) Domain und können sich dort mit folgenden Nutzerdaten anmelden:
Username: root
Passwort: 5iveL!fe
Nachdem Sie anschließend Ihr Passwort geändert haben, können Sie GitLab beliebig verwenden - Projekte von GitHub importieren, Gruppen erstellen und Ihre Repositories verwalten.
Fazit
Um GitLab in dem kleinsten DigitalOcean Droplet verwenden zu können benötigt es nicht viel - nur eine Swap-Partition und ein wenig mehr Geduld. Dank den niedrigen Kosten müssen Sie für einen Monat Laufzeit gerade mal 5$ ausgeben und können das Droplet natürlich auch anderweitig (z.B. für kleine Webseiten oder NodeJS-Applikationen) verwenden.