Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| dienste:bytecluster0002:matrix-synapse [29.07.2023 20:06] – mape2k | dienste:bytecluster0002:matrix-synapse [03.11.2026 08:47] (aktuell) – State Compressor mape2k | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== Container ' | + | ====== Container ' |
| ===== Ressourcen ===== | ===== Ressourcen ===== | ||
| Zeile 36: | Zeile 36: | ||
| * **sudo systemctl enable matrix-synapse.service** | * **sudo systemctl enable matrix-synapse.service** | ||
| * **sudo systemctl restart matrix-synapse.service** | * **sudo systemctl restart matrix-synapse.service** | ||
| + | |||
| + | ==== Cronjobs zur Bereinigung von Matrix Synapse ==== | ||
| + | |||
| + | === Media Cleanup === | ||
| + | |||
| + | Der Media Cleanup bereinigt Mediendateien, | ||
| + | Die aktuelle Schwelle liegt bei **2 Jahren**. Mediendateien, | ||
| + | |||
| + | - Access Token für Matrix Administrator lokal erzeugen | ||
| + | * **< | ||
| + | - Skript hinzufügen und generierten Token verwenden< | ||
| + | #!/bin/bash | ||
| + | |||
| + | TOKEN=" | ||
| + | |||
| + | PROTOCOL=" | ||
| + | SERVER=" | ||
| + | PORT=8008 | ||
| + | |||
| + | # Calculate date | ||
| + | TIMESTAMP=$(date +%s000 --date "2 years ago") | ||
| + | |||
| + | # Build API URLs | ||
| + | API_URL_MEDIA_LOCAL=" | ||
| + | API_URL_MEDIA_CACHE=" | ||
| + | |||
| + | # Check requiirements | ||
| + | if ! which jq > /dev/null; then | ||
| + | echo "jq not found. Please install required package!" | ||
| + | exit 1 | ||
| + | fi | ||
| + | |||
| + | # Log | ||
| + | log(){ | ||
| + | >&2 echo " | ||
| + | echo " | ||
| + | } | ||
| + | |||
| + | # Log error message | ||
| + | logError(){ | ||
| + | log err " | ||
| + | } | ||
| + | |||
| + | # Log info message | ||
| + | logInfo(){ | ||
| + | log info " | ||
| + | } | ||
| + | |||
| + | # Clean up local media | ||
| + | echo "Clean up local media ..." | ||
| + | RESPONSE=$(curl --silent --fail-with-body --header " | ||
| + | if [[ $? -ne 0 ]]; then | ||
| + | # Curl error | ||
| + | logError " | ||
| + | else | ||
| + | logInfo " | ||
| + | fi | ||
| + | |||
| + | # Clean up media cache | ||
| + | echo "Clean up media cache ..." | ||
| + | RESPONSE=$(curl --silent --fail-with-body --header " | ||
| + | if [[ $? -ne 0 ]]; then | ||
| + | # Curl error | ||
| + | logError " | ||
| + | else | ||
| + | logInfo " | ||
| + | fi | ||
| + | </ | ||
| + | - Berechtigungen für Skript anpassen | ||
| + | * **< | ||
| + | - Cronjob erstellen | ||
| + | * **< | ||
| + | </ | ||
| + | |||
| + | === State Compressor === | ||
| + | Der [[https:// | ||
| + | |||
| + | - Build des State Compressors auf einer externen VM mit gleichem OS wie der Server matrix-synapse nach [[https:// | ||
| + | - Ordner erstellen | ||
| + | * **< | ||
| + | - Dateien **synapse_auto_compressor/ | ||
| + | - Skript erstellen< | ||
| + | #!/bin/bash | ||
| + | |||
| + | # Run compressor with CHUNK_SIZE=1000 and CHUNKS_TO_COMPRESS=10000000 | ||
| + | / | ||
| + | </ | ||
| + | - Berechtigungen für Skript anpassen | ||
| + | * **< | ||
| + | - Cronjob erstellen | ||
| + | * **< | ||
| + | </ | ||
| ==== Backup mit Borgmatic ==== | ==== Backup mit Borgmatic ==== | ||