Gitlab installieren (Apache2) mit Configeinrichtung für subdomain

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

Registriere dich um viele Vorteile zu genießen! Weniger Werbung, bessere Kommunikation und vieles mehr!

  • Hier beschreibe ich wie man Gitlab richtig installiert, den Port umstellt damit man es mit Apache2 nutzen kann und eine Subdomain auf diese verweißt.
    Viele die aus der Programmiererszene kommen, kennen die Vorteile von Git und kennen die Dienste GitHub und Bitbucket.
    Hier kann man entweder Öffenliche Repo's anlegen oder mit max 5. Personen an einem Projekt arbeiten ohne Geld zuzahlen.
    Nun gibt es auch noch die Möglichkeit sich seinen eigenen Git-Server aufzusetzen Namens Gitlab CE.
    Hier kann man soviele Private Projekte anlegen wie man will und auch mit sovielen Leuten dran arbeiten.
    Hier Zeige ich euch wie ihr Gitlab richtig einrichtet so das es auch läuft wenn ihr Apache2 nutzt.

    Als erstes stellt ihr eine Verbindung zu eurem Server her,
    dann gibt ihr euch root-rechte mit dem comand:
    sudo -s

    Als nächstes kommt das vorbereiten der Programme die man braucht um Gitlab sich runter zuholen.
    apt-get install -y curl openssh-server ca-certificates postfix

    Nun holen wir uns ein Script von Gitlab runter was uns die nötigen Schlüssel und Daten einträgt damit wir dan Gitlab installieren können und führen dies aus:
    curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

    Da wir jetzt alles vorbereitet haben können wir nun Gitlab installieren:
    apt-get install -y gitlab-ce

    So jetzt haben wir schon mal Gilab installiert und müssen noch die Standardconfig erstellen, dies tuen wir in dem wir diesen Befehl eingeben:
    gitlab-ctl reconfigure

    Nach dem wir dies beendet haben läuft nun NginX auf Port 80 und überschneidet sich daher mit Apache2.
    Würden wir jetzt den Server neustarten würde nur noch NginX laufen da Apache2 nicht starten könnte da der Port 80 ja schon belegt ist.
    Deshalb stellen wir nun die Ports um:

    Dies machen wir in dem wir 3 Dateien editieren.

    Hier stellen wir nun den port 80 auf 8888 um.
    nano /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml

    also von:
    host: <Deine-Domain>
    port: 80
    auf:

    host: gitlab.<Deine-Domain>
    port: 8888

    als nächste dann die NginX-Datei:
    nano /opt/gitlab/embedded/conf/nginx.conf

    hier suchen wir uns die Zeile listen 80 und ändern die Zahl 80 auf 8888.

    nun restarten wir Gitlab:
    gitlab-ctl restart

    Nun klappt es immer noch nicht ganz deshalb müssen wir noch eine Datei ändern:
    nano /etc/gitlab/gitlab.rb
    und änderst den Wert von "external_url" auf:
    external_url 'http://gitlab.<Deine-Domain>:8888'

    Nun reconfiguriren wir Gitlab nochmal:
    gitlab-ctl reconfigure

    Und nun läuft alles Problem los.
    Nun wollen wir nicht immer <Deine-Domain>:8888 eingeben sondern gitlab.<Deine-Domain>, also müssen wir noch Apache2 configurieren.

    als erstes erstellen wir eine neue Config-Datei:
    nano /etc/apache2/sites-available/gitlab.conf

    Hier schreiben wir folgendes rein:

    Shell-Script: gitlab.conf

    1. <VirtualHost *:80>
    2. ServerName gitlab.<Deine-Domain>
    3. ProxyPreserveHost On
    4. ProxyRequests Off
    5. ProxyVia Off
    6. ProxyPass / http://127.0.0.1:8888/
    7. ProxyPassReverse / http://127.0.0.1:8888/
    8. </VirtualHost>
    und Speichern sie ab.

    Nun muss man bei Apache2 noch die Modies enablen mit:
    a2enmod proxy


    a2enmod proxy_http



    Als nächstes enablen wir noch unsere Config mit:
    a2ensite gitlab.conf



    Nun muss nur noch Apache2 restartet werden:
    service apache2 restart

    Ab jetzt könnt ihr euren Gitlab Server unter gitlab.<Deine-Domain> erreichen.

    Abschließend lässt sich sagen das Git nicht nur für die Programmierung seine Vorteile hat, sondern auch in der Bild/ Ton/ Videoverarbeitung hat, sowie auch für Gruppenreferate und Präsentationen.
    Weil man hier eine übersichtliche Versionsverwaltung hat und genau sieht wer was gemacht hat, bzw jeder eine lokale Kopie von allem hat.

    373 mal gelesen

Kommentare 4

  • ScorpiaWeb -

    Im letzten Absatz ist Präsentation falsch geschrieben ^^

  • Semikolon -

    Mir fehlt die nginx configuration

    • Letsplaybar -

      hast du auch zuvor gitlab-ctl reconfigure ausgeführt?
      erst hier erstellt er die ConfigDateien richtig.
      Wenn alles so wie hier ausgeführt worden ist müßte die NginX Config hier liegen /opt/gitlab/embedded/conf/nginx.conf sonst mal schauen ob es unter /etc/ ein NginX ordner gibt, weil dann ist die Config hier.