Wartung¶
Im laufenden Betrieb braucht der Vogelschlagmelder wenig Pflege. Wichtig
sind regelmäßige Sicherungen und das Einspielen neuer Versionen. Die
Befehle auf dieser Seite werden auf dem Server im Arbeitsordner der
Installation ausgeführt, in der Installationsanleitung
also unter /srv/docker/vogelschlagmelder.
Installation ohne Docker
Ohne Docker liegt der Ordner data unter /srv/vogelschlagmelder/data.
Statt docker compose stop und start wird der Dienst mit
sudo systemctl stop vogelschlagmelder bzw. start angehalten, und das
Protokoll zeigt journalctl -u vogelschlagmelder.
Was wo gespeichert ist¶
Ort |
Inhalt |
|---|---|
|
Datenbank mit allen Meldungen, historischen Daten, Accounts und Einstellungen |
|
Fotos der Meldungen, Logo, Favicon |
|
Zugangsdaten der Systemkonten, Mailserver und Schlüssel ( |
|
Aufbau der Container |
Der Speicherbedarf wächst fast nur mit den Fotos. Jedes Foto wird beim
Hochladen in JPEG umgewandelt und auf höchstens 4000 Pixel Kantenlänge
verkleinert; ein Handyfoto belegt danach meist wenige Megabyte. Als
Faustregel: Anzahl der Meldungen × Fotos je Meldung × 2 MB. Wie viel Platz
noch frei ist, zeigt auf dem Server df -h.
Sicherung¶
Vollständige Sicherung¶
Eine vollständige Sicherung besteht aus dem Ordner ./data und der Datei
.env. Damit lässt sich der Vogelschlagmelder auf einem neuen Server
vollständig wiederherstellen.
cd /srv/docker/vogelschlagmelder
docker compose stop vogelschlagmelder
tar czf ~/vogelschlagmelder-$(date +%F).tar.gz data
docker compose start vogelschlagmelder
Der kurze Stopp sorgt dafür, dass die Datenbank während des Kopierens nicht verändert wird. Die Datei aus dem Heimatverzeichnis sollte anschließend auf einen anderen Rechner oder in einen Cloud-Speicher kopiert werden – eine Sicherung auf demselben Server hilft nicht, wenn dieser ausfällt.
SETTINGS_SECRET getrennt aufbewahren
SMTP-Passwort und Matrix-Access-Token liegen verschlüsselt in der
Datenbank. Der Schlüssel dazu ist der Wert SETTINGS_SECRET aus der
.env. Er sollte getrennt von der Sicherung des Ordners ./data
aufbewahrt werden, etwa in einem Passwortmanager der Gruppe. Eine
gestohlene Sicherung der Datenbank allein verrät diese Zugangsdaten dann
nicht.
Geht der Wert verloren, sind alle übrigen Daten weiterhin lesbar. Nur SMTP-Passwort und Matrix-Token müssen im Adminbereich neu eingetragen werden.
Wiederherstellen¶
Docker und die Dateien
docker-compose.yamlund.envwie in der Installation einrichten.Die Sicherung in den Arbeitsordner entpacken:
tar xzf vogelschlagmelder-JJJJ-MM-TT.tar.gzRechte setzen:
chown -R 1001:1001 dataStarten:
docker compose up -d --build
Einstellungen exportieren¶
Zusätzlich lassen sich alle Einstellungen ohne Zugang zum Server sichern: Unter Anpassungen → Export & Import lädt Einstellungen exportieren eine ZIP-Datei herunter. Das eignet sich als Sicherung vor größeren Änderungen und um eine zweite Instanz – etwa für eine Nachbarregion – mit denselben Einstellungen zu starten.
Im Export enthalten |
Nicht enthalten |
|---|---|
Texte, Farben, Links, Header-Buttons, Footer |
Meldungen und ihre Fotos |
Logo, zweites Logo und Favicon |
Bilder und Videos der Individuellen Seite |
Einstellungen des Meldeformulars |
Historische Daten |
Vogelarten und Abdruckgrößen |
Accounts |
Meldebereich mit Landkreisen bzw. Polygon |
gespeicherte Filter |
Gefahrenkarte mit Info- und Link-Boxen |
SMTP-Passwort |
Individuelle Seite (Texte und Aufbau) |
Matrix-Access-Token |
E-Mail-Empfänger, Inhalt der Benachrichtigungen |
|
Matrix-Server und Raum, SMTP-Einstellungen ohne Passwort |
|
API-Schlüssel (nur als Hash) |
API-Schlüssel sind nur als Hash enthalten. Die Datei verrät die Schlüssel also nicht, nach einer Wiederherstellung funktionieren sie trotzdem weiter.
Einstellungen importieren spielt eine solche Datei wieder ein. Dabei werden die vorhandenen Einstellungen überschrieben. Vogelarten, Abdruckgrößen, Landkreise und API-Schlüssel werden vollständig durch den Inhalt der Datei ersetzt. Nach dem Import müssen das SMTP-Passwort und der Matrix-Access-Token neu eingetragen werden (siehe Kommunikation). Bis dahin ist die Matrix-Integration abgeschaltet.
Bilder der Individuellen Seite
Hochgeladene Bilder und Videos der Individuellen Seite liegen im Ordner
./data/uploads/cms/ und sind nur in der vollständigen Sicherung
enthalten. Wer die Einstellungen auf eine andere Instanz überträgt, lädt
sie dort neu hoch oder kopiert den Ordner mit.
Aktualisieren¶
Neue Versionen erscheinen im Changelog. Vor jedem Update:
den Changelog der neuen Version lesen – manche Versionen brauchen neue Einträge in der
.envoder eine neuedocker-compose.yaml,eine vollständige Sicherung anlegen.
Danach wird der Container neu gebaut:
cd /srv/docker/vogelschlagmelder
docker compose up -d --build
Bei der Installation mit Docker holt dieser Befehl den aktuellen Stand direkt aus dem Repository auf Codeberg. Bei der Installation ohne Docker gilt der dort beschriebene Weg. Änderungen an der Datenbank nimmt der Vogelschlagmelder beim Start selbst vor.
Welche Version läuft, steht unten in der Seitenleiste des Adminbereichs. Liegt der Vogelschlagmelder als App auf einem Smartphone, meldet die App die neue Version beim nächsten Öffnen selbst (siehe App auf dem Smartphone).
Protokolle ansehen¶
Fehler beim E-Mail-Versand, bei Matrix-Nachrichten oder beim Start stehen im Protokoll des Containers:
docker compose logs --tail 100 vogelschlagmelder
Mit -f statt --tail 100 läuft die Ausgabe weiter mit, bis sie mit
Strg+C beendet wird. Ältere Einträge werden automatisch gelöscht; es
bleiben höchstens fünf Dateien mit je 10 MB.
Fehlerbehebung¶
Problem |
Ursache und Lösung |
|---|---|
Der Container startet nicht, im Protokoll steht |
In der |
Fotos werden nicht gespeichert oder der Start bricht mit „Permission denied“ ab. |
Der Ordner |
Es kommen keine E-Mails an. |
SMTP-Einstellungen unter Kommunikation prüfen, Empfänger eingetragen? Fehlermeldung im Protokoll suchen. Auch den Spam-Ordner prüfen. |
Matrix-Nachrichten bleiben aus. |
Ist die Integration aktiviert und ein Raum ausgewählt? Test senden verwenden. Ein abgemeldeter Token muss neu eingetragen werden. |
Links in Benachrichtigungen zeigen auf eine falsche Adresse. |
|
Meldende sehen „Außerhalb des erlaubten Bereichs“. |
Der Fundort liegt außerhalb des Meldebereichs. Bereich unter Karte prüfen (siehe Meldebereich). |
Meldende sehen „Der Spamschutz konnte nicht überprüft werden“. |
Die Seite war sehr lange geöffnet oder JavaScript ist abgeschaltet. Seite neu laden und erneut senden. |
Meldende sehen „Es wurden zu viele Meldungen von diesem Anschluss gesendet“. |
Mehr als 20 Meldungen in einer Stunde vom selben Internetanschluss, etwa bei einer Sammelaktion über ein gemeinsames WLAN. Nach Ablauf der angezeigten Zeit geht es weiter. |
Die Anmeldung ist gesperrt. |
Zu viele Fehlversuche. 15 Minuten warten (siehe Accounts). |
Das Widget auf der eigenen Webseite bleibt leer. |
Die Webseite fehlt unter Widgets → Erlaubte Domains (siehe Widgets). |
Besucher sehen unter |
Die Karte ist nicht öffentlich geschaltet (siehe Gefahrenkarte). Angemeldete Admins sehen sie trotzdem. |
Auf dem Smartphone erscheint eine alte Version. |
Siehe App auf dem Smartphone. |
Lässt sich ein Fehler so nicht beheben, kann er im Issue-Tracker auf Codeberg gemeldet werden (siehe FAQ).