Projekte/Forum/Upgrade
(initial credits @kaefert for documentation) (credits to @lcnittl for ldap fix 2+3)
Hallo Leute!
Ich dokumentiere hier mal was zum Upgrade dieser Discourse Instanz (mit angepasstem LDAP Plugin) notwendig ist.
Dieser Beitrag ist auch im Forum hinterlegt: https://forum.funkfeuer.at/t/discourse-upgrade/229
Achtung: SSH Zugang wird benötigt! Upgrade ohne nachträgliche Anpassung mittels SSH Zugang hinterlässt das LDAP Plugin funktionsunfähig!
Evtl. will man vor einem Discourse Upgrade prüfen, ob das FunkFeuer Wiki gerade „schnell“ funktioniert oder lange (mehr als 2-3 Sekunden) ladet um einen Artikel anzuzeigen oder eine Suche durchzuführen.
Da das Wiki am gleichen Server rennt wie das Forum, kann man daran "erkennen", ob der Server gerade „ausgelastet“ ist oder nicht.
Hintergrund: falls zu wenig Ressourcen zur Verfügung stehen, kann das Upgrade (wegen Zeitüberschreitungen bei der Installation) fehl schlagen.
FunkFeuer Forum - Discourse Upgrade
1. Unter https://forum.funkfeuer.at/admin/backups ein Discourse-Daten-Backup erstellen und runterladen.
(Download bricht im aktuellen Firefox Browser manchmal ab, da einfach auf einen anderen Browser ausweichen.)
2. Mit einem Administrator/Moderator (jeder sollte eigentlich SSH Zugang haben) abklären ob es ein aktuelles Systembackup gibt:
Wünschenswert wäre eine verlässliche Möglichkeit Backups sicher auf FunkFeuer Infrastruktur abzulegen.
Derzeit scheint es diese Möglichkeit noch nicht zu geben.
3. Ein System-Upgrade durchführen:
sudo apt update apt list --upgradable sudo apt upgrade
(ggf. bei kernel-upgrade danach die VM neu starten: sudo reboot)
4. https://forum.funkfeuer.at/admin/upgrade aufrufen und upgrade durchklicken.
4.1. Falls das Forum nicht geladen wird, kann das Problem am Theme liegen. Versuche den Safe-Mode.
4.2. Mittels Safe-Mode dann in der Administration / Anpassen beim Default-Theme die beiden Theme-Komponenten Slick und Tiles entfernen und nach dem erfolgreichen Upgrade wieder hinzufügen.
4.3. Es könnte auch sein, dass eine Meldung kommt, dass das Upgrade per CLI gemacht werden muss:
sudo su cd /var/discourse git pull ./launcher rebuild app
5. Prüfen ob beide (Discourse und mailserver) Docker Container wieder laufen:
docker ps
sollte in etwa so aussehen: (sonst im Zweifelsfall die VM neu starten, dauert nur wenige Minuten, die Container starten dann beide)
forum:~$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 72670824e10a local_discourse/app "/sbin/boot" 3 weeks ago Up 8 minutes app 5b64315e0a1e tvial/docker-mailserver:latest "/bin/sh -c 'supervi…" 6 weeks ago Up 8 minutes 0.0.0.0:25->25/tcp, 110/tcp, 0.0.0.0:143->143/tcp, 0.0.0.0:587->587/tcp, 0.0.0.0:993->993/tcp, 465/tcp, 0.0.0.0:995->995/tcp, 4190/tcp mail
Sollte es dennoch Probleme mit SSL geben: https://meta.discourse.org/t/setting-up-https-support-with-lets-encrypt/40709
#### Manually issue new cert sudo su - cd /var/discourse/ ./launcher enter app sv stop nginx cd /shared/letsencrypt LE_WORKING_DIR=/shared/ssl /shared/letsencrypt/acme.sh --issue -d forum.funkfeuer.at -d oldforum.funkfeuer.at --webroot /var/www/discourse/public/ # restart "inner" nginx from container sv start nginx exit # restart "outer" nginx from vm systemctl restart nginx