Update "3.4.0.beta4" fehlgeschlagen

Ich habe die übliche E-Mail erhalten, in der ich aufgefordert wurde, mich anzumelden und auf die GUI-Update-Schaltflächen zu klicken. Normalerweise funktionieren sie, aber dieses Mal ist die gesamte Website ohne Erklärung abgestürzt.

Da ich die Website-GUI nicht verwenden konnte, habe ich mich per SSH auf das Droplet eingeloggt, in /var/discourse gewechselt und versucht, neu zu starten, aber es friert ein.

Ich habe die Verbindung geschlossen, mich erneut per SSH eingeloggt, in das Verzeichnis gewechselt und versucht, neu zu erstellen, aber auch das friert ein.

Ich sehe ein paar andere Beiträge mit ähnlichen Beschwerden, aber keine Lösungen. Was soll ich bitte tun?

Hier ist die Ausgabe, wenn es einfriert:

# ./launcher rebuild app
WARNING: Docker version 20.10.5 deprecated, recommend upgrade to 24.0.7 or newer.
x86_64 arch detected.
WARNING: containers/app.yml file is world-readable. You can secure this file by running: chmod o-rwx containers/app.yml
Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
2.0.20250129-0720: Pulling from discourse/base
Digest: sha256:01b8516e5504c0e9bc3707773015ff4407be03a89154194ff3b5b8699291bc26
Status: Image is up to date for discourse/base:2.0.20250129-0720
docker.io/discourse/base:2.0.20250129-0720
/usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2025-02-06T23:22:07.378632 #1]  INFO -- : Reading from stdin
I, [2025-02-06T23:22:07.397972 #1]  INFO -- : File > /etc/service/postgres/run  chmod: +x  chown: 
I, [2025-02-06T23:22:07.403501 #1]  INFO -- : File > /etc/service/postgres/log/run  chmod: +x  chown: 
I, [2025-02-06T23:22:07.409307 #1]  INFO -- : File > /etc/runit/3.d/99-postgres  chmod: +x  chown: 
I, [2025-02-06T23:22:07.415306 #1]  INFO -- : File > /root/install_postgres  chmod: +x  chown: 
I, [2025-02-06T23:22:07.420321 #1]  INFO -- : File > /root/upgrade_postgres  chmod: +x  chown: 
I, [2025-02-06T23:22:07.421155 #1]  INFO -- : Replacing data_directory = '/var/lib/postgresql/15/main' with data_directory = '/shared/postgres_data' in /etc/postgresql/15/main/postgresql.conf
I, [2025-02-06T23:22:07.423599 #1]  INFO -- : Replacing (?-mix:#?listen_addresses *=.*) with listen_addresses = '*' in /etc/postgresql/15/main/postgresql.conf
I, [2025-02-06T23:22:07.428964 #1]  INFO -- : Replacing (?-mix:#?synchronous_commit *=.*) with synchronous_commit = $db_synchronous_commit in /etc/postgresql/15/main/postgresql.conf
I, [2025-02-06T23:22:07.434970 #1]  INFO -- : Replacing (?-mix:#?shared_buffers *=.*) with shared_buffers = $db_shared_buffers in /etc/postgresql/15/main/postgresql.conf
I, [2025-02-06T23:22:07.435971 #1]  INFO -- : Replacing (?-mix:#?work_mem *=.*) with work_mem = $db_work_mem in /etc/postgresql/15/main/postgresql.conf
I, [2025-02-06T23:22:07.437209 #1]  INFO -- : Replacing (?-mix:#?default_text_search_config *=.*) with default_text_search_config = '$db_default_text_search_config' in /etc/postgresql/15/main/postgresql.conf
I, [2025-02-06T23:22:07.438032 #1]  INFO -- : Replacing (?-mix:#?checkpoint_segments *=.*) with checkpoint_segments = $db_checkpoint_segments in /etc/postgresql/15/main/postgresql.conf
I, [2025-02-06T23:22:07.438766 #1]  INFO -- : Replacing (?-mix:#?logging_collector *=.*) with logging_collector = $db_logging_collector in /etc/postgresql/15/main/postgresql.conf
I, [2025-02-06T23:22:07.439506 #1]  INFO -- : Replacing (?-mix:#?log_min_duration_statement *=.*) with log_min_duration_statement = $db_log_min_duration_statement in /etc/postgresql/15/main/postgresql.conf
I, [2025-02-06T23:22:07.440192 #1]  INFO -- : Replacing (?-mix:^#local +replication +postgres +peer$) with local replication postgres  peer in /etc/postgresql/15/main/pg_hba.conf
I, [2025-02-06T23:22:07.440757 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*127.*$) with host all all 0.0.0.0/0 md5 in /etc/postgresql/15/main/pg_hba.conf
I, [2025-02-06T23:22:07.441342 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*::1\\/128.*$) with host all all ::/0 md5 in /etc/postgresql/15/main/pg_hba.conf
I, [2025-02-06T23:22:07.442038 #1]  INFO -- : > if [ -f /root/install_postgres ]; then
  /root/install_postgres && rm -f /root/install_postgres
elif [ -e /shared/postgres_run/.s.PGSQL.5432 ]; then
  socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
fi

failed to set locale!
[error] character map file `UTF-8' not found: No such file or directory
failed to set locale!
[error] default character map file `ANSI_X3.4-1968' not found: No such file or directory
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = "en_US.UTF-8",
	LC_ALL = "en_US.UTF-8",
	LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
/bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
cat: /shared/postgres_data/PG_VERSION: No such file or directory
popen failure: Cannot allocate memory
initdb: error: program "postgres" is needed by initdb but was not found in the same directory as "/usr/lib/postgresql/15/bin/initdb"
I, [2025-02-06T23:22:09.511169 #1]  INFO -- : Generating locales (this might take a while)...
  en_US.UTF-8... done
Generation complete.
Upgrading PostgreSQL from version to 15

I, [2025-02-06T23:22:09.511908 #1]  INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/15/bin/postmaster -D /etc/postgresql/15/main
I, [2025-02-06T23:22:09.514561 #1]  INFO -- : Terminating async processes
2025-02-06 23:22:09.541 GMT [51] LOG:  skipping missing configuration file "/shared/postgres_data/postgresql.auto.conf"
2025-02-06 23:22:09.542 UTC [51] FATAL:  data directory "/shared/postgres_data" has invalid permissions
2025-02-06 23:22:09.542 UTC [51] DETAIL:  Permissions should be u=rwx (0700) or u=rwx,g=rx (0750).


Siehe PostgreSQL 15 Update

Ich glaube, Sie müssen

Sie müssen die Berechtigungen ändern (ich lag mit dem Besitzer falsch)

Ich habe dasselbe Problem

Sie müssen diese Probleme beheben. Was sind die Spezifikationen Ihres Servers?

2 „Gefällt mir“

OH! Ich hatte das Docker-Version-Problem nicht bemerkt.

@anon55243134, du solltest wahrscheinlich ein Backup machen (wenn möglich) und zu einer neuen VM wechseln (verwende Discourse-Site mit rsync auf einen anderen VPS verschieben, wenn du kein aktuelles Backup hast).

1 „Gefällt mir“

Verwandt:

[quote=„anon55243134, post:15, topic:350968″]
Was ist falsch mit unserer aktuellen VM?
[/quote]

Ich vermute, sie ist über ihr Lebensende hinaus.

Das Hochfahren einer neuen VM und der Wechsel zu ihr erfordert keine Ausfallzeit, und wenn etwas schiefgeht, bleiben Sie einfach auf dem vorhandenen Server. Es ist jedoch etwas kompliziert.

Es tut mir leid, dass Sie keine andere Wahl hatten, als auf ein altes Backup zurückzugreifen. Ich würde auf tägliche Backups umstellen und ein Backup erstellen, bevor Sie ein Update durchführen, damit Sie nichts verlieren müssen.

Sie können zu den Beta- oder stabilen Zweigen wechseln, bevor Sie ein Upgrade durchführen. Sie können sich über Konfigurieren eines unterstützten Tracking-Zweigs, um Discourse-Software-Updates zu erhalten informieren.

1 „Gefällt mir“

Ich verwende data.yml. Falls Sie app.yml verwenden, beachten Sie die referenzierte Konfiguration für postgres.template.yml innerhalb von app.yml. Während des Datenbank-Upgrade-Prozesses müssen hierarchische Verweise verwendet werden, um das Upgrade von Version 13 auf 15 durchzuführen.