Heute habe ich meine GitLab-Instanz von 8.0.5 auf 8.4.4 angehoben, dies wird mir viele Vorteile bringen, die Entwicklung ist ja mächtig vorangegangen.
Etwas bammel hatte ich schon, denn dieses Update ist das erste Update von GitLab, welches ich über den Austausch des GitLab-Container machen werde. Vorher hatte ich GitLab ja direkt aus den Sourcen installiert und bin dann ende letzten Jahres von GitLab Source-Installation auf GitLab Docker Container gewechselt.
Stoppen des aktuellen GitLab Docker Container
Zuersteinmal habe ich die GitLab-Instanz gestoppt:
1 |
docker stop gitlab |
Weil ich nicht wusste was nun geschehen würde habe ich ein Backup gemacht:
1 2 |
cd /srv/docker/gitlab/ zip -r docker8-0-5.zip gitlab |
GitLab Docker Container aktualisieren
Aktualisieren? Pfft. Nicht mit mir. Ich kille einfach den alten Docker-Container und tausche ihn aus:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
docker rm gitlab docker run --name gitlab -d \ --link gitlab-postgresql:postgresql \ --link gitlab-redis:redisio \ --publish 10022:22 \ --publish 10080:80 \ --env 'GITLAB_PORT=10080' \ --env 'GITLAB_SSH_PORT=10022' \ --env 'GITLAB_SECRETS_DB_KEY_BASE=long-and-random-alpha-numeric-string' \ --env 'GITLAB_HOST=lw-scm.de' \ --env 'GITLAB_TIMEZONE=Berlin' \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ quay.io/sameersbn/gitlab:8.4.4 |
Nun ließ sich der GitLab Container aber nicht starten. Mir rutschte das Herz in die Hose.
Etwas googlen und überlegen später kam mir die Idee, dass es vielleicht im Host-Update lag. Also habe ich kurzerhand die beiden anderen Container auch neugestartet und anschließend dann den zweiten Versuch für den GitLab Container durchgeführt:
1 2 |
docker restart gitlab-postgresql gitlab-redis docker start gitlab |
Und voila: GitLab migrierte die Daten. Nachverfolgen kann man den Fortschritt über die Log-Ausgaben des Container:
1 |
docker logs -f gitlab |
Fazit nach dem GitLab Docker Container Update
Mich für das Hosting von GitLab in einem Docker-Container zu entscheiden ist echt Gold wert! So einfach war noch kein Update von GitLab für mich.
Außerdem muss ich m ich nun um keine Abhängigkeiten von GitLab mehr kümmern, dass macht ja der Cotnainer himself 🙂