Teslamate: Update der Teslamate Google Cloud Installation
Anbei eine weitere Schritt für Schritt Anleitung, um Teslamate in der Google Cloud zu aktualisieren. Allgemeine Voraussetzung: Teslamate in der Google Cloud installiert.
Kurzübersicht
Um die Version von Teslamate zu aktualisieren müssen wir in der docker-compose.yml Datei die Version eintragen, die gestartet werden soll. In der ursprünglichen Datei ist die Version 1.27.0 eingetragen. Hier aktualisieren wir auf 1.27.3. Hierzu melden wir uns an der virtuellen Maschine über die Console an, erstellen ein Backup der Datenbank, editieren die docker-compose.yml, downloaden die neue Version und starten Teslamate neu. Wie folgt:
Anmelden auf der Console
Wie in der Installations-Anleitung beschrieben auf der virtuellen Maschine anmelden:
Backup erstellen
Bevor wir aktualisieren erstellen wir ein Backup der Datenbank:
sudo docker-compose exec -T database pg_dump -U teslamate teslamate > ~/teslamate_db.2023-10-09
Damit erstellt ihr ein Backup, welches in eurem Home-Verzeichnis gespeichert wird:
andreas_faerber@docker-teslamate:~/docker-teslamate$ sudo docker-compose exec -T database pg_dump -U teslamate teslamate > ~/teslamate_db.2023-10-09
andreas_faerber@docker-teslamate:~/docker-teslamate$ ls -la ~/tesla*
-rw-r--r-- 1 andreas_faerber andreas_faerber 281208664 Oct 9 20:44 /home/andreas_faerber/teslamate_db.2023-10-09
andreas_faerber@docker-teslamate:~/docker-teslamate$
Editieren der docker-compose.yml Datei
Wir editieren jetzt die docker-compose.yml, so dass wir die Version von 1.27.0 auf 1.27.3 anpassen.
Das soll dann so aussehen (wir ändern VORHER in NACHHER):
VORHER:
services:
teslamate:
image: teslamate/teslamate:1.27.0
restart: always
[...]
NACHHER:
services:
teslamate:
image: teslamate/teslamate:1.27.3
restart: always
[...]
Dazu nutzen wir die folgenden Kommandos nach dem einloggen auf die virtuelle Maschine:
cd docker-teslamate
nano docker-compose.yml
Um die Datei zu speichern drückt ihr ^X (Control-x), beantwortet die Frage mit “y” (y drücken) und bei “File Name to Write: docker-compose.yml” drückt ihr einfach Return. Dann solltet ihr wieder auf dem Prompt in der Konsole sein:
andreas_faerber@docker-teslamate:~$ cd docker-teslamate/
andreas_faerber@docker-teslamate:~/docker-teslamate$ nano docker-compose.yml
andreas_faerber@docker-teslamate:~/docker-teslamate$
Download des Updates
Mit den folgenden Kommandos laden wir die neue Version von teslamate herunter:
sudo docker-compose pull
Ausgabe:
andreas_faerber@docker-teslamate:~/docker-teslamate$ sudo docker-compose pull
Pulling grafana ... done
Pulling database ... done
Pulling teslamate ... done
Pulling mosquitto ... done
Pulling proxy ... done
andreas_faerber@docker-teslamate:~/docker-teslamate$
Neustart von teslamate
sudo docker-compose down
sudo docker-compose up -d
Ausgabe:
andreas_faerber@docker-teslamate:~/docker-teslamate$ sudo docker-compose down
Stopping docker-teslamate_grafana_1 ... done
Stopping docker-teslamate_proxy_1 ... done
Stopping docker-teslamate_database_1 ... done
Stopping docker-teslamate_teslamate_1 ... done
Stopping docker-teslamate_mosquitto_1 ... done
Removing docker-teslamate_grafana_1 ... done
Removing docker-teslamate_proxy_1 ... done
Removing docker-teslamate_database_1 ... done
Removing docker-teslamate_teslamate_1 ... done
Removing docker-teslamate_mosquitto_1 ... done
Removing network docker-teslamate_default
andreas_faerber@docker-teslamate:~/docker-teslamate$ sudo docker-compose up -d
Creating network "docker-teslamate_default" with the default driver
Creating docker-teslamate_teslamate_1 ... done
Creating docker-teslamate_mosquitto_1 ... done
Creating docker-teslamate_grafana_1 ... done
Creating docker-teslamate_proxy_1 ... done
Creating docker-teslamate_database_1 ... done
andreas_faerber@docker-teslamate:~/docker-teslamate$
Fertig
Voila!
Comments
Marc
Hi Andreas Ich habe seit Oktober teslamate am laufen dank deiner super Anleitung (inkl. Update). Seit heute läuft jedoch nix mehr. Google Cloud hat eine 100% Auslastung und meine Versuche teslamate neu starten klappen nicht. Nun gibt es ja die Backups. Was muss man genau tun um die VM neu aufzusetzen und das Backup einzuspielen? Danke für deine Hilfe & Grüsse
Andreas
Hallo Marc,
wie hast du versucht Teslamate neu zu starten? Im docker-teslamate Verzeichnis sollte ein
sudo docker-compose down
und anschließend
sudo docker-compose up -d
asureichen für einen Neustart. Wenn das nicht hilft eventuell das System neu starten (sudo reboot) und dann prüfen, ob du Teslamate neu starten kannst / musst.
Was bekommst du dort in den Logfiles? (sudo docker-compose logs –tail=200)
Viele Grüße Andreas
Andreas
Zum Thema Backup, falls du noch kein eigenes Backup angelegt hast:
Ein Beispiel-Skript solltest du mit folgendem Befehl herunterladen können:
curl -o ~/docker-teslamate/teslmate_backup.sh https://blog.abgefaerbt.de/assets/files/teslamate_backup_beispiel.sh
Dies dann aus dem Verzeichnis heraus mit “sh ./teslamate_backup.sh” aufrufen um ein Backup zu erstellen. Auf der Teslamate Seite zum Backup und Restore ist beschrieben, wie du das Backup einspielen kannst (wenn du schon eins hast).
Klappt das bei dir / kommst du damit klar?
Viele Grüße Andreas
Marc
Hi Andreas
Danke für deine schnelle und Professionelle Hilfe :) Ich konnte Teslamate neu starten mit folgendem Befehl: sudo docker-compose up
In den Logfiles erhalte ich (tail=200) nachdem Neustart.
Das mit dem Backup werde ich noch in Angriff nehmen.
Vielen Dank und Grüsse Marc
Leave a Comment
Your email address will not be published. Required fields are marked *