Gitlab - privates Github
Github gibt es leider nicht für Selfhosting. Es gibt aber mehrere Alternativen, z. B. Gitlab https://about.gitlab.com
Die Installation soll angeblich sehr einfach sein, macht jedoch einige Probleme.
Einrichtung
Nach der Installation müssen noch einige Einstellungen vorgenommen werden. Der FQDN ist hier einzutragen:
vim /etc/gitlab/gitlab.rb
Bitte NICHT in der Konfigurationsdatei:
vim /opt/gitlab/embedded/service/gitlab-shell/config.yml
an der Stelle:
# Url to gitlab instance. Used for api calls. Should end with a slash. gitlab_url: "http://127.0.0.1:8080"
die eigene URL eintragen, da diese Datei automatisch erzeugt wird, sondern in
vim /etc/gitlab/gitlab.rb
folgendes eintragen:
# Check and change the external_url to the address your users will type in their browser external_url 'http://mydomain.de:8080' redis['port'] = 8001 unicorn['port'] = 8002
danach ist:
gitlab-ctl reconfigure
Dann ist mit folgendem Befehl das System zu initialisieren:
gitlab-rake gitlab:setup RAILS_ENV=production gitlab-ctl restart
auszuführen. Jetzt sind auch die Links in den Bestätigungs-E-Mails korrekt und Gitlab sollte funktionieren. Für das Webinterface wurde Port 8080 gewählt, da so auf Port 80 weiterhin ein normaler Webservice gehostet werden kann. Die anderen Ports sind ebenfalls anzugeben, da die Standardeinstellung zu Portkonflikten führen kann, welche den Fehler: "502 Gitlab is not responding" hervorrufen können.
Dann im Browser: mydomain.de:8080
user: root password: 5iveL!fe
Jetzt noch das Passwort ändern, neu einloggen und Nutzer anlegen, danach als Nutzer einloggen und ssh-keys hochladen.
Jetzt mit:
ssh -vvvT git@mydomain.de -i /path/to/my/ssh-key
testen. Falls der Login fehlschlägt, dann muss auf dem Server noch dem Nutzer git ein Passwort gegeben werden mit:
passwd git
dann erst ist der Nutzer nicht mehr gesperrt.
mögliche Probleme
Nach dem Anlegen eines Accounts wird eine E-Mail mit Bestätigungslink versandt. Dort sollte man eigentlich draufklicken können und anschließend ein neues Passwort wählen. Unter Umständen ist der Port nicht oder falsch im Link eingetragen. Das passiert, wenn die falschen Konfigurationsdateien geändert wurden oder die entsprechenden Befehle (reconfigure, restart) nicht ausgeführt wurden. Es ist nur die Konfigurationsdatei /etc/gitlab/gitlab.rb zu ändern.