Pups::ExecError: postgres ユーザーで 'psql discourse -c "alter schema public owner to discourse;"' を実行したところ、失敗しました

実行しようとしたときに、次のエラーが発生しました。./launcher rebuild app

失敗しました

Pups::ExecError: su postgres -c ‘psql discourse -c “alter schema public owner to discourse;”’ がコード #<Process::Status: pid 54 exit 2> で失敗しました

失敗場所: /usr/local/lib/ruby/gems/3.1.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn’

exec はパラメータ “su postgres -c ‘psql $db_name -c \"alter schema public owner to $db_user;\"’” で失敗しました

ブートストラップに失敗しました。終了コード 2 です

ブートストラップに失敗しました 上にスクロールして、以前のエラーメッセージを探してください。複数ある場合があります。

./discourse-doctor が問題を診断するのに役立つ場合があります。

4079c40b96373f2f33049a30414bc383bdb52a1a678a9f0cc9f7

Originally sent in general
Ratnam_Raju_Varsala

@Canapinさん、Dockerアプリにプラグインを統合するにはどうすればよいですか?

Heliosurge
Ratnam_Raju_Varsala

失敗しました
--------------------

Pups::ExecError: su postgres -c 'psql discourse -c "alter schema public owner to discourse;"' がリターンコード #<Process::Status: pid 54 exit 2> で失敗しました

失敗場所: /usr/local/lib/ruby/gems/3.1.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'

exec failed with the params "su postgres -c 'psql $db_name -c \"alter schema public owner to $db_user;\"'"

bootstrap failed with exit code 2

ブートストラップに失敗しました 上記にスクロールして、以前のエラーメッセージを探してください。複数ある可能性があります。

./discourse-doctor が問題を診断するのに役立つかもしれません。

4079c40b96373f2f33049a30414bc383bdb52a1a678a9f0cc9f7

root@community-online:/var/discourse# /discourse-doctor

-bash: /discourse-doctor: ディレクトリまたはファイルが見つかりません

app.yml ファイルにプラグインを追加した後、このエラーが発生しています。

Heliosurge

Dockerでプラグインを追加したapp.ymlのセクションを投稿してもらえますか?

フォーマットは非常に正確である必要があります。
少し面倒ですが、通常は一度に2つのプラグインのみをインストールして再構築します。

どのプラグインをインストールしようとしていますか?

Ratnam_Raju_Varsala

サイトはプラグインが追加されるまで正常に動作していましたが、追加後にこのエラーが発生し、サイトがダウンしました。

Heliosurge

チャット投稿の一部を削除してください。機密情報が含まれています。プラグイン情報と $home のようなものだけが必要です。

トレードボタンプラグインが2回追加されています。両方のインスタンスを削除して、再構築を試み、サイトが復元されるか確認してください。

チャットで許可されていれば、ここから下だけで十分です。´´...´´ のようにラップしてください。

Ratnam_Raju_Varsala

いいえ、2回追加されていません。

app.yml の内容をすべて貼り付けただけです。

JammyDodger

これはトピックで議論した方が良いと思います。メッセージを移動します。:+1:

Ratnam_Raju_Varsala

削除しました

Heliosurge

了解、Jam。彼の機密情報を削除して、プラグイン情報だけにしてくれますか?

「いいね!」 2

I, [2023-02-11T18:58:30.914906 #1]  INFO -- : > [ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/13/bin/initdb -D /shared/postgres_data || exit 0
I, [2023-02-11T18:58:30.917342 #1]  INFO -- : 
I, [2023-02-11T18:58:30.917415 #1]  INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2023-02-11T18:58:30.930655 #1]  INFO -- : 
I, [2023-02-11T18:58:30.930872 #1]  INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2023-02-11T18:58:30.933165 #1]  INFO -- : 
I, [2023-02-11T18:58:30.933384 #1]  INFO -- : > /root/upgrade_postgres
I, [2023-02-11T18:58:30.937415 #1]  INFO -- : 
I, [2023-02-11T18:58:30.937665 #1]  INFO -- : > rm /root/upgrade_postgres
I, [2023-02-11T18:58:30.939673 #1]  INFO -- : 
I, [2023-02-11T18:58:30.940012 #1]  INFO -- : Replacing data_directory = '/var/lib/postgresql/13/main' with data_directory = '/shared/postgres_data' in /etc/postgresql/13/main/postgresql.conf
I, [2023-02-11T18:58:30.940639 #1]  INFO -- : Replacing (?-mix:#?listen_addresses *=.*) with listen_addresses = '*' in /etc/postgresql/13/main/postgresql.conf
I, [2023-02-11T18:58:30.941061 #1]  INFO -- : Replacing (?-mix:#?synchronous_commit *=.*) with synchronous_commit = $db_synchronous_commit in /etc/postgresql/13/main/postgresql.conf
I, [2023-02-11T18:58:30.941491 #1]  INFO -- : Replacing (?-mix:#?shared_buffers *=.*) with shared_buffers = $db_shared_buffers in /etc/postgresql/13/main/postgresql.conf
I, [2023-02-11T18:58:30.941859 #1]  INFO -- : Replacing (?-mix:#?work_mem *=.*) with work_mem = $db_work_mem in /etc/postgresql/13/main/postgresql.conf
I, [2023-02-11T18:58:30.942208 #1]  INFO -- : Replacing (?-mix:#?default_text_search_config *=.*) with default_text_search_config = '$db_default_text_search_config' in /etc/postgresql/13/main/postgresql.conf
I, [2023-02-11T18:58:30.942546 #1]  INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2023-02-11T18:58:30.945002 #1]  INFO -- : 
I, [2023-02-11T18:58:30.945405 #1]  INFO -- : Replacing (?-mix:#?checkpoint_segments *=.*) with checkpoint_segments = $db_checkpoint_segments in /etc/postgresql/13/main/postgresql.conf
I, [2023-02-11T18:58:30.945805 #1]  INFO -- : Replacing (?-mix:#?logging_collector *=.*) with logging_collector = $db_logging_collector in /etc/postgresql/13/main/postgresql.conf
I, [2023-02-11T18:58:30.946227 #1]  INFO -- : Replacing (?-mix:#?log_min_duration_statement *=.*) with log_min_duration_statement = $db_log_min_duration_statement in /etc/postgresql/13/main/postgresql.conf
I, [2023-02-11T18:58:30.946605 #1]  INFO -- : Replacing (?-mix:^#local +replication +postgres +peer$) with local replication postgres  peer in /etc/postgresql/13/main/pg_hba.conf
I, [2023-02-11T18:58:30.946992 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*127.*$) with host all all 0.0.0.0/0 md5 in /etc/postgresql/13/main/pg_hba.conf
I, [2023-02-11T18:58:30.947317 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*::1\/128.*$) with host all all ::/0 md5 in /etc/postgresql/13/main/pg_hba.conf
I, [2023-02-11T18:58:30.947660 #1]  INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main
I, [2023-02-11T18:58:30.949060 #1]  INFO -- : > sleep 5
2023-02-11 18:58:30.959 UTC [42] FATAL:  data directory "/shared/postgres_data" has invalid permissions
2023-02-11 18:58:30.959 UTC [42] DETAIL:  Permissions should be u=rwx (0700) or u=rwx,g=rx (0750).
I, [2023-02-11T18:58:35.952167 #1]  INFO -- : 
I, [2023-02-11T18:58:35.952437 #1]  INFO -- : > su postgres -c 'createdb discourse' || true
createdb: error: could not connect to database template1: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory
	Is the server running locally and accepting connections on that socket?
I, [2023-02-11T18:58:35.994953 #1]  INFO -- : 
I, [2023-02-11T18:58:35.995243 #1]  INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory
	Is the server running locally and accepting connections on that socket?
I, [2023-02-11T18:58:36.036721 #1]  INFO -- : 
I, [2023-02-11T18:58:36.037043 #1]  INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory
	Is the server running locally and accepting connections on that socket?
I, [2023-02-11T18:58:36.078384 #1]  INFO -- : 
I, [2023-02-11T18:58:36.078703 #1]  INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory
	Is the server running locally and accepting connections on that socket?
I, [2023-02-11T18:58:36.120285 #1]  INFO -- : 
I, [2023-02-11T18:58:36.120682 #1]  INFO -- : Terminating async processes

FAILED
--------------------
Pups::ExecError: su postgres -c 'psql discourse -c "alter schema public owner to discourse;"' failed with return #<Process::Status: pid 54 exit 2>
Location of failure: /usr/local/lib/ruby/gems/3.1.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
exec failed with the params "su postgres -c 'psql $db_name -c \\\"alter schema public owner to $db_user;\\\"'"
bootstrap failed with exit code 2
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
4c2225e9c667f9fc2b7b4f9bd26c03f243e877b123be1d41a3c57bf90c049595

プラグインを追加する際は、上記のコードをコピーして配置する必要があります。行間にはスペースがないと思います。

また、使用したいプラグインがまだサポートされているか確認してください。

そのプラグインのリンクを投稿してもらえますか?このプラグインには慣れていません。ディスコースにもリンクがあるといいのですが。

discourse git clone GitHub - jannolii/discourse-topic-trade-buttons

プラグインを削除してから再構築を試みましたが、プラグインを削除した後にこのエラーが発生しました。以前は正常に動作していました。

I, [2023-02-11T18:58:30.949060 #1] INFO – : > sleep 5

2023-02-11 18:58:30.959 UTC [42] FATAL: データディレクトリ「/shared/postgres_data」の権限が無効です

2023-02-11 18:58:30.959 UTC [42] DETAIL: 権限は u=rwx (0700) または u=rwx,g=rx (0750) である必要があります。

I, [2023-02-11T18:58:35.952167 #1] INFO – :

I, [2023-02-11T18:58:35.952437 #1] INFO – : > su postgres -c ‘createdb discourse’ || true

createdb: error: データベース template1 に接続できませんでした: サーバーへの接続ソケット「/var/run/postgresql/.s.PGSQL.5432」で失敗しました: ファイルまたはディレクトリがありません

サーバーはローカルで実行されており、そのソケットで接続を受け付けていますか?

I, [2023-02-11T18:58:35.994953 #1] INFO – :

I, [2023-02-11T18:58:35.995243 #1] INFO – : > su postgres -c ‘psql discourse -c "create user discourse;"’ || true

psql: error: サーバーへの接続ソケット「/var/run/postgresql/.s.PGSQL.5432」で失敗しました: ファイルまたはディレクトリがありません

サーバーはローカルで実行されており、そのソケットで接続を受け付けていますか?

I, [2023-02-11T18:58:36.036721 #1] INFO – :

I, [2023-02-11T18:58:36.037043 #1] INFO – : > su postgres -c ‘psql discourse -c "grant all privileges on database discourse to discourse;"’ || true

psql: error: サーバーへの接続ソケット「/var/run/postgresql/.s.PGSQL.5432」で失敗しました: ファイルまたはディレクトリがありません

サーバーはローカルで実行されており、そのソケットで接続を受け付けていますか?

I, [2023-02-11T18:58:36.078384 #1] INFO – :

I, [2023-02-11T18:58:36.078703 #1] INFO – : > su postgres -c ‘psql discourse -c "alter schema public owner to discourse;"’

psql: error: サーバーへの接続ソケット「/var/run/postgresql/.s.PGSQL.5432」で失敗しました: ファイルまたはディレクトリがありません

サーバーはローカルで実行されており、そのソケットで接続を受け付けていますか?

I, [2023-02-11T18:58:36.120285 #1] INFO – :

I, [2023-02-11T18:58:36.120682 #1] INFO – : 非同期プロセスを終了しています

FAILED


Pups::ExecError: su postgres -c ‘psql discourse -c "alter schema public owner to discourse;"’ がリターン #<Process::Status: pid 54 exit 2> で失敗しました

失敗場所: /usr/local/lib/ruby/gems/3.1.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn’

exec はパラメータ "su postgres -c ‘psql $db_name -c \"alter schema public owner to $db_user;\"’" で失敗しました

ブートストラップは終了コード 2 で失敗しました

ブートストラップに失敗しました 上記にスクロールして、以前のエラーメッセージを探してください。複数ある可能性があります。

./discourse-doctor は問題の診断に役立つ可能性があります。

4c2225e9c667f9fc2b7b4f9bd26c03f243e877b123be1d41a3c57bf90c049595

手順についてはよくわかりませんが、セーフモードでサイトを読み込めるかもしれません。

@JammyDodger セーフモードの手順をリンクしていただけますか?

私のログファイルを見ましたか?

ご覧のとおり、「safe mode」は自動的にセーフモードチュートリアルへのリンクに変換されます:)

「いいね!」 2

ありがとうございます。申し訳ありません。

canapin、これが問題の原因となっている可能性のあるものは何か見えますか? 推測ですが、app.yml のフォーマットの問題でしょうか?

セーフモードのトピックからの抜粋。

2023-02-11 19:20:40.842 UTC [42] FATAL: data directory “/shared/postgres_data” has invalid permissions
2023-02-11 19:20:40.842 UTC [42] DETAIL: Permissions should be u=rwx (0700) or u=rwx,g=rx (0750).
I, [2023-02-11T19:20:45.834611 #1] INFO – :
I, [2023-02-11T19:20:45.834887 #1] INFO – : > su postgres -c ‘createdb discourse’ || true
createdb: error: could not connect to database template1: connection to server on socket “/var/run/postgresql/.s.PGSQL.5432” failed: No such file or directory
Is the server running locally and accepting connections on that socket?

さらに上にスクロールする必要があるかもしれません。セーフモードの手順を試しましたか?

この場合、効果があるかどうかは正直わかりません。

サイトが完全にダウンしており、セーフモードを追加しても機能せず、サイトがダウンしてアプリが実行されていません。

アプリの app.yml$plugins goes here セクションを再投稿していただけますか?

「code」で囲み、「/code」で終わるようにしてください。引用符は「[」と「]」に置き換えてください。

Your app.yml cintent here
- does nor trigger markdown

ダン、app.ymlファイルからプラグインを削除しました。プラグインはもうありませんが、ここに再度投稿します。

volumes:

  • volume:
    host: /var/discourse/shared/standalone
    guest: /shared
  • volume:
    host: /var/discourse/shared/standalone/log/var-log
    guest: /var/log

プラグインはここに追加します

詳細については Install plugins on a self-hosted site を参照してください

hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone GitHub - discourse/docker_manager: Plugin for use with discourse docker image

しかし、フォーマットエラーの可能性があります。app.yml ファイルは非常にうるさいです… 1行でもずれると問題が発生する可能性があります。

そのため、コードマークダウンの間に貼り付けて、ファイルの生のバージョンを確認できるようにすると述べました。

空行でさえ問題を引き起こす可能性があります。