Auch Weblog (/ˈwɛb.lɔg/) genannt. Hier nehme ich mir die Freiheit querbeet über alles zu schreiben, was mich so interessiert. Das können auch mal Themen außerhalb meiner üblichen Schwerpunkte sein. Mein Blog, Meine Regeln.
Das Internet hat mein Gehirn umprogrammiert und irgendwie gefällt mir das Upgrade nicht besonders.
Kennst du diesen Reflex? Man guckt einen Film und greift nur mal kurz zum Telefon und guckt, was so an Push-Nachrichten reinkam. Und fünf bis zehn Minuten später dann noch mal. Und noch einmal. Und noch einmal…
Ganzen Text lesenWie privat darf ein Weblog wie dieses hier eigentlich werden? Auch wenn diese Webseite meinen Namen trägt, handelt es sich schließlich nicht um eine private Seite.
Klar lasse ich im einen oder anderen Text auch mal etwas Privates durchschauen, aber in erster Linie ist das hier eine geschäftliche Seite. Kunden sollen mehr über mich erfahren, potentielle Kunden auf mich aufmerksam werden. Im besten Fall bucht jemand meine Dienste.
Ist es also angemessen über Privates zu schreiben?
Ganzen Text lesenNach einigen Arbeiten an einem VServer, brauchte dieser einen Reboot. Und wie sollte es anders sein, danach wollte GitLab nicht mehr korrekt starten.
Ohne mich zunächst groß um die Gründe dafür zu kümmern, packte ich die Gelegenheit beim Schopfe und dachte mir, ich gönne GitLab mal ein Update. Ich hätte es besser wissen müssen, denn ich hab noch nie ein reibungsloses GitLab-Update vollziehen können…
Auch nach dem Aktualisieren von GitLab ließ es sich nicht dazu bewegen, sich in Gang zu setzen. Irgendwie lief ein Subset der nötigen Prozesse, so dass ich im Browser mal einen Error 502, mal einen Error 500 bekam.
Das Ganze hatte mit Postgresql und dem VServer zu tun, aber der Reihe nach:
Fangen wir doch bei Schritt eins an und sorgen erst einmal dafür, dass GitLab wieder aktuell ist. Dazu benutze ich unter Ubuntu inzwischen fertige Pakete.
Mit zwei Zeilen auf der Konsole, und alles ist recht schnell installiert. Ratsam ist es, vorher die alte GitLab Instanz zu stoppen sudo service gitlab stop
oder sudo gitlab-ctl stop
, je nach Version.
Dann kann die Installation losgehen:
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo apt-get install gitlab-ce
Nicht wundern, zunächst wird das Paket gitlab
deinstalliert, es wird durch das neue gitlab-ce
ersetzt. Es laufen einige Informationen den Screen lang. Beim ersten Versuch bekam ich einen Fehler und das Paket konnte nicht vollständig installiert werden. Fragt nicht warum, aber beim zweiten Anlauf klappte es.
Danach nur noch einmal GitLab rekonfigurieren, damit die alte Einstellungen übetragen werden:
sudo gitlab-ctl reconfigure
Fertig! Oder?
Nach der Installation bekam ich den besagten Error 502. Ein Blick auf gitlab-ctl status
verriet mir, dass eigentlich alles wunderbar läuft.
Um ganz sicher zu gehen, ließ ich GitLab mal einen Selbsttest machen:
sudo gitlab-rake gitlab:app:check
Zunächst sah es ganz gut aus, doch dann brach der Test ab. Auf Postgresql konnte nicht zugeriffen werden, weil unter /tmp
keine Socket gefunden wurde. Nach einigem Suche und den Hinweisen, man solle doch einen Symlink erstellen, stieß ich auf das eigentliche Problem.
Scheinbar ist Postgresql standardmäßig so konfiguriert, dass es versucht sich 25% RAM zu reservieren. Was auf VServern schief laufen kann. Ein Blick ins Logfile (/var/log/gitlab/postgresql/current
) legte etwas in der Art nahe. Also ab in die GitLab-Config.
GitLab kommt mit einer eigenen Postgresql-Instanz daher und auch mit einer eigenen Config und zwar die zentrale GitLab-Config unter /etc/gitlab/gitlab.rb
.
Laut Dokumenation von GitLab sollte man dort postgresql['shared_buffers'] = "100MB"
setzen. Das tat ich und Postgresql tat es weiterhin nicht. Die Logausgabe meckerte immer shmmax
an. Also mal in der Config geschaut und einen entsprechenden Wert (auskommentiert) gefunden. Ich setzte diesen Wert dann auch noch mal runter: postgresql['shmmax'] = 10179869184
Daraufhin habe ich GitLab wieder rekonfigurieren lassen
sudo gitlab-ctl reconfigure
Und dann auch noch einmal neugestartet, damit Postgresql auch wirklich mitspielt.
sudo gitlab-ctl restart
Ein Blick auf /tmp
erfreute mich dann mit der Anwesenheit einer Socket-Datei. Wunderbar. Den Browser aufgerufen und anstatt eines Error 502 nun ein Error 500.
Da jetzt alle Dienste laufen, starte ich noch einmal den Selbsttest, in der Hoffnung, diesmal ein wenig mehr Informationen zu bekommen.
sudo gitlab-rake gitlab:app:check
Und siehe da! Die Datenbank muss noch migriert werden.
sudo gitlab-rake db:migrate RAILS_ENV=production
Ein weiterer Test bestätigte, alles grün. Also noch einmal GitLab restarten:
sudo gitlab-ctl restart
Ein Blick in den Browser und es wird ein Loginscreen präsentiert. Auch via Git lässt sich nun wieder pullen und pushen.
Wollen wir hoffen, dass das nächste Update dann etwas entspannter läuft.
Nach einem Server-Restart, bestand das Problem wieder. Wahnsinn. Folgender Beitrag half aber.
https://gitlab.com/gitlab-org/gitlab-ce/issues/719
Ganzen Text lesenIch habe ja schon das ein oder andere Mal durchblitzen lassen, ich arbeite gerade an einem kleinen Podcastformat. Dafür habe ich ein Plugin für Kirby geschrieben.
Eigentlich hatte ich mir überlegt, ich setze schnell eine WordPress-Seite auf und installiere ein Podcast-Plugin.
Allerdings habe ich mich dann doch anders entschieden. Das gekaufte Theme war nicht mit dem Podcastplugin kompatibel und eine Menge neuer Sicherheitslücken sprachen dagegen, mal eben schnell und sorgenfrei WordPress zum Podcasten zu nutzen.
Also habe ich umgesattelt und angefangen eine einfache Seite mit Kirby zu bauen. Ich will gar nicht viel Aufwand in die Seite selber stecken, das Kernstück soll der Podcast sein und den werden die Meisten sowieso über einen Podcastclient hören.
Etwas sehr Wichtiges fehlte aber zu meinem Glück, ein passender RSS-Feed, der auch alle wichtigen Felder für iTunes und Co beinhaltet. Ein normaler RSS-Feed tut es da nicht.
Also habe ich mich hingesetzt und angefangen ein Plugin zu schreiben. Das Plugin liefert einen RSS-Feed, wie ich ihn für iTunes brauche und analysiert dabei noch alle MP3-Dateien, die ich zum Post hochgeladen habe. Das heißt Dauer und Größe werden erkannt und an iTunes weitergegeben.
Ganzen Text lesenIch habe lange nach Sublime-Text-Erweiterungen gesucht, die mir beim Schreiben von JavaScript-Code unter die Arme greifen und scheine nun eine gute Kombination von Plugins gefunden zu haben.
Ganzen Text lesen