"Ihre lokalen Änderungen.... templates/postgres.template.yml"

Discourse startet nicht. Die Protokolle für den Container zeigen:

ok: run: redis: (pid 47) 791s
ok: run: postgres: (pid 44) 791s
supervisor pid: 4051 unicorn pid: 4056
./config/unicorn_launcher: line 71: kill: (4056) - No such process
./config/unicorn_launcher: line 15: kill: (4056) - No such process
(4051) exiting
ok: run: redis: (pid 47) 793s
ok: run: postgres: (pid 44) 793s
supervisor pid: 4065 unicorn pid: 407

Ich habe versucht, zu /var/discourse zu gehen und ./launcher rebuild app auszuführen, und es zeigt dies in einer Schleife:

Ensuring launcher is up to date
Updating Launcher...
Updating 721facb..34dd695
error: your local changes to the following files would be overwritten by merge: templates/postgres.template.yml
Please commit your changes or stash them before you merge.
Aborting
failed to update

Warum ist das passiert und wie kann ich das beheben?

Wo befindet sich Ihr Datenbanks server?

Dies bestimmt die Argumente, die Sie nach dem Befehl .\launcher rebuild app benötigen.

Wenn Sie beispielsweise eine Postgres-Instanz auf dem Host (127.0.0.1) verwenden:

Sie müssen den Launcher/Rebuild mit Host-Networking ausführen:

./launcher rebuild app --docker-args --net=host --skip-mac-address

Mein Datenbankserver ist derselbe wie bei Discourse, ich habe die offizielle Installationsanleitung verwendet, um Discourse zu installieren

Dieser Befehl zeigt denselben Fehler. Das ist seltsam, da er normalerweise einwandfrei funktioniert.

@Ethsim2 Ich habe die Datei in ein Home-Verzeichnis kopiert und sie aus /templates entfernt

Dies ist das neue Problem: Discourse Online Updater & ./launcher rebuild app failed from Discourse gamification

Was gibt free -h zurück?

Interessant. Sie sollten die Rebuild-Argumente für eine Standardinstallation nicht benötigen.

Oder, sagen wir, wenn der PostgreSQL-Server auf 0.0.0.0 wäre und die entsprechenden Konfigurationen vorhanden wären, damit Discourse seine Netzwerkisolation aufrechterhalten kann.

dies würde das Mounten in der app.yml erfordern, um im relevanten Discourse-Docker-Container nützlich zu sein, was nicht empfohlen wird


Sie können die Datei immer im Host-Verzeichnis mit rm entfernen

Ja, ich habe rm /var/discourse/templates/postgres.template.yml ausgeführt, was nichts schaden sollte, da es sich um eine Vorlagendatei handelt?