Nach dem Upgrade von docker_manager über die API (was reibungslos zu funktionieren schien) rendert das Admin-Dashboard nur eine leere Seite, auch wenn der Rest des Forums zu funktionieren scheint.
Um dies zu beheben, habe ich Folgendes ausgeführt:
./launcher rebuild app
Während dieses Prozesses traten jedoch Fehler auf:
I, [2025-07-14T08:54:06.062789 #1] INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
set -o errexit
if [ $(git rev-parse --is-shallow-repository) == "true" ]; then
git remote set-branches --add origin main
git remote set-branches origin tests-passed
git fetch --depth 1 origin tests-passed
else
git fetch --tags --prune-tags --prune --force origin
fi
'
error: packfile .git/objects/pack/pack-581fe47ace192793da04d01989a4d1a7f0e6103c.pack does not match index
error: packfile .git/objects/pack/pack-581fe47ace192793da04d01989a4d1a7f0e6103c.pack does not match index
error: packfile .git/objects/pack/pack-581fe47ace192793da04d01989a4d1a7f0e6103c.pack does not match index
error: packfile .git/objects/pack/pack-581fe47ace192793da04d01989a4d1a7f0e6103c.pack does not match index
… und der error: packfile wird einfach weiter gespammt, bis er unterbrochen wird.
Nach allem sieht es so aus, als wäre das git-Repository beschädigt worden. Aber welches Git-Repository?
Ich habe nicht einmal einen Ordner /var/www/discourse, daher gehe ich davon aus, dass dies innerhalb eines Container-Volumes geschieht?
error: packfile .git/objects/pack/pack-581fe47ace192793da04d01989a4d1a7f0e6103c.pack does not match index
error: packfile .git/objects/pack/pack-581fe47ace192793da04d01989a4d1a7f0e6103c.pack does not match index
error: packfile .git/objects/pack/pack-581fe47ace192793da04d01989a4d1a7f0e6103c.pack does not match index
etc..
Ich habe versucht, das Problem zu lösen, indem ich discourse umbenannt und ein neues geklont habe:
Endlich hat es funktioniert!
Ich glaube, es war eine Mischung aus einem beschädigten git und dem Ergebnis eines früheren Docker-Upgrades. Ich habe es gelöst, indem ich alle Docker-Container und -Images bereinigt habe:
cd /opt/discourse
./launcher stop app
docker container prune
docker image prune -a
./launcher rebuild app
Dies führte zu folgendem Ergebnis:
Upgrade Complete
----------------
Optimizer statistics are not transferred by pg_upgrade.
Once you start the new server, consider running:
/usr/lib/postgresql/15/bin/vacuumdb --all --analyze-in-stages
Running this script will delete the old cluster's data files:
./delete_old_cluster.sh
-------------------------------------------------------------------------------------
UPGRADE OF POSTGRES COMPLETE
Old 13 database is stored at /shared/postgres_data_old
To complete the upgrade, rebuild again using:
./launcher rebuild app
-------------------------------------------------------------------------------------
Durch erneutes Ausführen des Rebuilds funktionierte es vollständig: