2016-12-20 21:56 GMT+01:00 Martin Schuchardt kruemeltee@gmx.de:
Hoi @all,
ich hab ein kleines Problem mit Gitlab. Ich habe zu Hause einen kleinen "Home-Server" für verschiedene Aufgaben, OS: Archlinux (also recht schlank).
Auf der Kiste laufen 2-3 Dienste, nichts wirklich schlimmes, weil der eigentlich nicht wirklich was zu tun hat, darunter:
- Apache
- MySQL
- SSH
Ich nutze diesen Server u.a. als Git-Repository-Server, aber alles nur auf der Kommandozeile. Jetzt dachte ich mir: dieses Gitlab ist ja ganz niedlich als Oberfläche, da braucht man nicht immer auf der Kommandozeile zu arbeiten, also gesagt getan und erst einmal in einer Virtuellen Maschine installiert.
Dabei kommen mit:
- ein "unicorn" Server (für die Weboberfläche) auf Basis von ruby
- ein Redis (keine Ahnung wozu das Ding notwendig ist)
Die Installation war erfolgreich, aber beim ersten Aufruf der Gitlab-Webseite merkte ich, wie "langsam" doch meine virtuelle Maschine war und wie lange der brauchte um die WEbseite mittels "unicorn" aufzubauen. Gut, die VM war auch echt klein, nur 1GB Ram und 1 CPU, also gab ich dem Ding 2 CPUs und siehe da, es flutschte.
Nun hab ich aber auf meinem Rechner mit Virtualisierung eine größere CPU. Nachdem ich nun Gitlab auf meinen "Home-Server" Installiert habe, quält sich der kleine echt einen ab, die WEbseite darzustellen. Die Kiste hat 8GB RAM und 2CPUs mit (leider nur 1,6GHz).
Aber ich frage mich: warum verursacht diese kleine Webseite soviel Last? Ich mein, was soll denn Gitlab eigentlich machen? Ne normale Webseite darstellen und ggf. per GitShell unten drunten ein paar GIT Befehle los lassen. Das sollte doch eigentlich kein Problem sein.
Ich hab nun im unicorn die Worker-Prozesse runter geschraubt, weil effektiv ja nur ich auf der Kiste bin und niemand sonst. Aber auch damit wird Gitlab auf der Kiste nicht wirklich schnell.
Hat hier jemand ein paar Tipps für mich? Kann ich
a) die gitlab-Dienste irgendwie beschleunigen? b) vielleicht gibts ne Alternative die rein als Webdienst mit PHP arbeitet?
Grüße Martin
Gitlab ist da vielleicht etwas overkill. Da hast du ja noch drölftausend features gleich mit (Wiki, Issue-Tracker, Kanban Board etc pp).
Alternativen zu Gitlab (die vom Funktionsumfang ähnlich sind): * Gogs (In go geschrieben und kann auch mit Sqlite3 oder MySQL betrieben werden. du brauchst also nicht zwingend weitere (Datenbank) services laufen lassen) https://gogs.io * Gitbucket (In Scala geschrieben. Braucht durch die JVM vermutlich auch eher mehr ressourcen) https://github.com/gitbucket/gitbucket
Die frage ist, was willst du eigentlich? Einfach nur Remote Front-End mit dem du die Commits/Logs und den Quellcode im Browser angucken kannst? Dann kann ich 'klaus' empfehlen. In Python2 geschrieben (pip2 install klaus), super einfach (Usage: klaus verzeichnis/zum/repository verzeichnis/zum/anderes_projekt) und leightweight https://github.com/jonashaag/klaus/
Grüße Markus