データベースからパスワードを取得する方法

こんにちは! Discourse(Docker)をインストールするとき、データベースのパスワードがわかりません。
データベースにリモート接続したいので、DiscourseはすべてのDockerイメージに同じパスワードを設定していると思います。

「いいね!」 1

こんにちは、moschinoさん :wave:

技術的なことはあまり詳しくないのですが、コンテナ内ではパスワードなしでユーザー名 discourse を使用してデータベースに接続できると思います。

それが役に立つかどうか教えてください。

./launcher enter app
su - discourse
psql
「いいね!」 1

なぜそうしたいのですか?通常、データエクスプローラーの方がその目的に適しています。

デフォルトでは、データベースはポートに公開されていません。

どうしてもデータベースを公開したい場合は、2コンテナ構成で再インストールしてください(discourse-setup --two-container)。新しいサーバーで実行するのが最も簡単ですが、移行方法に関するトピックも存在します。

ほとんどの場合、それは悪い考えです。データエクスプローラーまたはAPIを使用してください。

「いいね!」 7

config/database.yml の良いコンテンツは何ですか?本番環境の例を共有していただけますか?

データベースがリストされておらず、Ruby が (export override_translations のような) 一部のタスクで失敗しています。私のインストールに何か問題があるのではないかと疑っています。

現在、config/database.yml には開発用とテスト用のデータベースしか表示されておらず、実際に動作している現在のデータベーススキーマに修正したいと思っています :slight_smile:

コンテナ化された Discourse インスタンスの psql で本番 DB を読み取ることができます。

ディスコースはどのようにインストールしましたか?

どのような問題を解決しようとしていますか?

何かが間違っているという証拠は何ですか?

rake db:migrate

が何をするか、ご覧になるかもしれませんか?

データベース名は環境変数にあります。

「いいね!」 1

I can’t export es_XX custom language で、設定が間違っている可能性があると疑っていますが、本番環境のパスワードとホストがymlファイルに宣言されていないようです。

LANGとDISCOURSE_DEFAULT_LOCALEをいじってみましたが、十分ではないはずです。

現在、LANG = en_US.UTF-8DISCOURSE_DEFAULT_LOCALE = es になっており、(これにより、回避策としてtrust_level on custom-locale issueを修正できます)。

これは標準的なインストールではないようですね。

はい、そうですが、開発と本番環境を混同してしまったのだと思います。

カスタムロケール文字列の絵文字に問題があるのかもしれません。確認してみます。