Diesen Artikel bewerten :
5/5 | 2 Hinweis
Dieser Artikel war hilfreich für Sie ?
Ja
Nicht
Vous avez noté 0 étoile(s)
Sommaire
Procédure
GitLab ist ein mächtiges Werkzeug, mit dem du deine verschiedenen Git-Repositories einfach verwalten kannst. Allerdings kann seine Einrichtung mit unseren Betriebssystemen, die mit ISPConfig 3 ausgestattet sind, leicht Kopfzerbrechen bereiten. Aus diesem Grund haben wir uns entschieden, dir eine vollständige Anleitung für diesen Vorgang zur Verfügung zu stellen.
GitLab benötigt mindestens 2 GB Arbeitsspeicher. In Verbindung mit den mindestens 2 GB für ISPConfig 3 und der Anzahl der ausgeführten Prozesse (die fast 30 % der Quote für ISPConfig allein ohne jegliche Website ausmachen) reicht dasVPS L-Angebot der LWS Starter-Reihe für kleine Projekte aus, aber wir empfehlen die VPS Pro-Reihe für alle Projekte mit professionellem Anspruch.
Für dieses Tutorial verwenden wir einen VPS mit dem leeren Betriebssystem Debian 9 + ISPConfig 3 aus dem LWS-Panel. Hier sind die Links zu anderen Tutorials für andere Betriebssysteme :
Wenn Sie das Betriebssystem Ihres VPS ändern möchten, finden Sie hier einen Link zur Hilfedokumentation: Wie ändere ich das Betriebssystem meines VPS?
Bitte beachten Sie, dass dieses Tutorial nur auf einer VIERGE-Installation von Debian 9 + ISPConfig getestet wurde. Wenn Sie bereits Webseiten oder andere Dienste auf Ihrem VPS installiert haben, können wir nicht garantieren, dass das Tutorial effektiv ist und/oder dass alle Ihre anderen Dienste nach der Installation funktionsfähig sind.
Denken Sie daran, den SSH-Port in der Firewall Ihres VPS zu aktivieren und SSH Managed Services zu deaktivieren, damit Sie sich als Root an der SSH-Konsole anmelden können.
Dies sind die Schritte, die in diesem Tutorial behandelt werden:
Bevor Sie etwas installieren, empfiehlt es sich, die Paketliste und die Pakete selbst zu aktualisieren. Schreiben Sie auf Ihrer SSH-Konsole die folgenden Befehle:
apt-get update
apt-get upgrade -y
apt-get dist-upgrade -y
Wir können auch ISPConfig aktualisieren.
Zunächst installieren wir die von Gitlab benötigten Abhängigkeiten:
apt-get install -y curl openssh-server ca-certificates.
Als nächstes fügen wir das Gitlab-Repository zu Ihrem VPS hinzu :
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | bash
Nun installieren wir Gitlab auf Port 6080 (zufällig ausgewählter Port) :
EXTERNAL_URL="http://vpsXXXXX.lws-hosting.com:6080" apt-get install gitlab-ee
Die Installation dauert mehrere Minuten, Sie können in der Zwischenzeit einen Tee trinken.
Tipp: Wenn Sie eine nicht sehr stabile Internetverbindung haben, können Sie screen einrichten, um sich bei einer ungeplanten Trennung der Verbindung wieder mit der Detachable-Konsole zu verbinden. Dokumentation zur Verwendung von screen.
Die Installation wird fehlschlagen. Das ist völlig normal. Das liegt daran, dass Gitlab versuchen wird, Änderungen am Kernel vorzunehmen. Diese Änderungen sind jedoch auf den VPS-Servern von LWS aufgrund der verwendeten Virtualisierungstechnologie nicht erlaubt. Um dies zu umgehen, müssen Sie die Kernelkonfigurationsdateien, die von Gitlab gepostet werden, "berühren" (den Befehl touch
ausführen), um ihren Inhalt zu leeren und die Installation fortsetzen zu können:
touch /opt/gitlab/embedded/etc/90-omnibus-gitlab-kernel.sem.conf touch /opt/gitlab/embedded/etc/90-omnibus-gitlab-kernel.shmall.conf touch /opt/gitlab/embedded/etc/90-omnibus-gitlab-kernel.shmmax.conf touch /opt/gitlab/embedded/etc/90-omnibus-gitlab-net.core.somaxconn.conf
Falls es noch weitere Konfigurationsdateien gibt, zögern Sie nicht, diese zu leeren. Führen Sie dann den folgenden Befehl aus, um die Gitlab-Konfigurationen neu zu generieren:
gitlab-ctl reconfigure
Nun müssen Sie GitLab stoppen, das, wie Sie überprüfen konnten, überhaupt nicht funktioniert:
gitlab-ctl stop
Das Problem liegt am Modul unicorn, das denselben Port wie ISPConfig verwendet. Wir werden daher seinen Port ändern, indem wir die Datei /etc/gitlab/gitlab.rb editieren:
nano /etc/gitlab/gitlab.rb
und editieren Sie die folgende Zeile:
# unicorn['port'] = 8080 unicorn['port'] = 8083
Vorher stand es als Kommentar und 8080 als Wert. Jetzt haben wir es dekomentiert und 8083 als Port gesetzt. Lassen Sie uns die Konfigurationsdateien neu erstellen :
gitlab-ctl reconfigure.
Nun müssen wir Gitlab neu starten:
gitlab-ctl restart
Tipp: Wenn unicorn sich weigert zu starten, gibt es Kinderprozesse, die noch nicht geschlossen wurden. Schließen Sie diese mit gitlab-ctl stop und versuchen Sie es dann erneut.
Um den Zugriff auf Gitlab zu sichern, werden wir ein Let's Encrypt SSL-Zertifikat erstellen, das dann auf dem Reverse Proxy installiert wird.
Hinweis: Wir werden das SSL-Zertifikat nicht auf Gitlab einrichten. Wir werden lediglich den Zugang auf seinem Reverse Proxy absichern. Tatsächlich wird auf Gitlab nur über den Reverse Proxy zugegriffen, wir können unserem VPS also zusätzlichen Rechenaufwand ersparen, indem wir Datenverkehr verschlüsseln, der den VPS nicht verlassen wird.
Dazu müssen wir zunächst git.example.com auf Ihren VPS verweisen. Danach verwenden wir certbot:
certbot certonly --webroot -w /usr/local/ispconfig/interface/acme/ -d git.example.com
Hinweis: ISPConfig (dank seines vhost und seiner .conf für Apache) leitet Anfragen, die /.well-known/ enthalten, direkt an /usr/local/ispconfig/interface/acme/ weiter. Wir verwenden also eine webroot-Authentifizierung und nutzen den dafür vorgesehenen Ordner von ISPConfig. Dies wird dafür sorgen, dass wir bei Erneuerungen nicht mit ISPConfig kollidieren.
Wenn Sie zum ersten Mal ein Let's Encrypt SSL-Zertifikat auf Ihrem VPS erstellen, sollten Sie eine E-Mail-Adresse angeben und die Nutzungsbedingungen von Let's Encrypt akzeptieren.
Nun müssen wir den Reverse-Proxy mit Apache konfigurieren, der mit ISPConfig und den zugehörigen Websites zusammenleben wird. Wir werden daher eine neue Konfigurationsdatei erstellen :
nano /etc/apache2/sites-available/gitlab.conf
und wir müssen den folgenden Inhalt einrichten:
ServerName git.example.com ServerAdmin root@git.exemple.com RewriteEngine On RewriteRule ^/??(.*) https://%{SERVER_NAME}/$1 [R,L]
ServerName git.example.com ServerAdmin root@git.exemple.com ProxyRequests Off ProxyPreserveHost On ProxyVia Full Require all granted ProxyPass http://127.0.0.1:6080/ ProxyPassReverse http://127.0.0.1:6080/ ErrorLog ${APACHE_LOG_DIR}/error.log LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined SSLEngine on SSLCertificateFile /etc/letsencrypt/live/git.example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/git.example.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/git.example.com/chain.pem.
Und aktivieren wir diesen neuen vhost :
ln -s /etc/apache2/sites-available/gitlab.conf /etc/apache2/sites-enabled/000-gitlab.conf
Aber bevor Sie Apache neu starten, müssen Sie die notwendigen Module aktivieren :
a2enmod proxy a2enmod proxy_http.
Starten Sie nun Apache neu :
systemctl restart apache2
Und das war's. Wenn Sie auf git.example.com zugreifen, werden Sie sehen, dass Gitlab bereit ist :
Diesen Artikel bewerten :
5/5 | 2 Hinweis
Dieser Artikel war hilfreich für Sie ?
Ja
Nicht
3mn von Lesen
Wie kann ich auf meinem dedizierten VPS-Server auf ISPConfig zugreifen?
0mn von Lesen
Wie kann ich in ISPConfig auf einem dedizierten VPS-Server einen DNS-Server einrichten?
0mn von Lesen
Wie kann ich das Passwort für das ISPConfig-3-Panel ändern?
1mn von Lesen
Wie sichere ich den Zugriff auf mein ISPconfig-Panel mithilfe einer .htaccess-Datei?