Ember 5 より前の Discourse のクリーンインストールを再構築中(ベータチャンネルを対象)、無限のローディング画面が表示されます

件名を参照してください。少し困っています。フォーラムが依存しているプラグインが新しいDiscourseリリースで動作しなくなったため、レガシーの長期サービスサポートを維持するために、DiscourseのEmber 5より前のビルドにロールバックしようとしています。数日時計を巻き戻すために、すべてを片付けました(コンテナを削除し、/var/discourseを削除してGitHubから再プルしました)。そして、まっさらなDiscourseインストールからやり直しています。.ymlファイルで「version: beta」を指定したので、Ember 5より前になるはずです。

通常どおり管理者アカウントを設定して確認すると、無限のロード画面が表示されます。はい、セットアップ時にいつも行うように、セーフモードビューに入り、Force HTTPSを有効にしました。

プラグインを削除したり、最小限のプラグインだけでやり直したり、あらゆる方法を試しました。

      - git clone https://github.com/discourse/docker_manager.git

.ymlファイルに記載されています。うまくいきません。管理者アカウントを設定した後も、(最小限のまっさらなインストールでも)無限のロード画面が表示されます。

コンソールを見ると、現在次のような状態です。

現在の.ymlファイルはこちらです。

## これはオールインワン、スタンドアロンのDiscourse Dockerコンテナテンプレートです
##
## このファイルを変更した後は、必ず再構築してください
## /var/discourse/launcher rebuild app
##
## 編集には*非常に*注意してください!
## YAMLファイルは、空白または配置の誤りに非常に敏感です!
## 必要に応じてこのファイルを検証するには、http://www.yamllint.com/ にアクセスしてください。

templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  - "templates/web.ratelimited.template.yml"
## Lets Encrypt (https) を追加したい場合は、これらの2行をコメント解除してください
  #- "templates/web.ssl.template.yml"
  #- "templates/web.letsencrypt.ssl.template.yml"

## このコンテナはどのTCP/IPポートを公開しますか?
## DiscourseをApacheやnginxのような他のWebサーバーとポート共有したい場合は、
## 詳細については https://meta.discourse.org/t/17247 を参照してください。
expose:
  - "10080:80"   # http
  - "10443:443" # https

params:
  db_default_text_search_config: "pg_catalog.english"

  ## db_shared_buffers を総メモリの最大25%に設定してください。
  ## ブートストラップによって検出されたRAMに基づいて自動的に設定されるか、上書きできます。
  db_shared_buffers: "2048MB"

  ## ソートパフォーマンスを向上させることができますが、接続ごとにメモリ使用量が増加します
  #db_work_mem: "40MB"

  ## このコンテナはどのGitリビジョンを使用しますか? (デフォルト: tests-passed)
  version: beta

  ## 最大アップロードサイズ (デフォルト: 10m)
  upload_size: 8196m

env:
  LANG: en_US.UTF-8
  # DISCOURSE_DEFAULT_LOCALE: en

  ## 同時に処理できるWebリクエスト数はいくつですか?メモリとCPUコアに依存します。
  ## ブートストラップによって検出されたCPUに基づいて自動的に設定されるか、上書きできます。
  UNICORN_WORKERS: 8

  ## TODO: このDiscourseインスタンスが応答するドメイン名
  ## 必須。DiscourseはIPアドレスのみでは機能しません。
  DISCOURSE_HOSTNAME: forum.tabletpc.review

  ## 上記で指定されたホスト名 (-h オプション) と同じホスト名でコンテナを起動したい場合はコメント解除してください (デフォルト "$hostname-$config")
  #DOCKER_USE_HOSTNAME: true

  ## TODO: 初期サインアップ時に管理者および開発者になるメールアドレスのカンマ区切りリスト
  ## 例 'user1@example.com,user2@example.com'
  DISCOURSE_DEVELOPER_EMAILS: 'admin@tabletpc.review'

  ## TODO: 新規アカウントの検証と通知の送信に使用されるSMTPメールサーバー
  # SMTPアドレス、ユーザー名、パスワードが必要です
  # 注意:SMTPパスワードの文字 '#' は問題を引き起こす可能性があります!
  DISCOURSE_SMTP_ADDRESS:  [REDACTED]
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME:  [REDACTED]
  DISCOURSE_SMTP_PASSWORD: " [REDACTED]"
  #DISCOURSE_SMTP_ENABLE_START_TLS: true           # (オプション、デフォルトはtrue)

  ## Lets Encryptテンプレートを追加した場合、無料のSSL証明書を取得するために以下をコメント解除してください
  #LETSENCRYPT_ACCOUNT_EMAIL: me@example.com

  ## このDiscourseインスタンスのCDNアドレス (プル用に設定)
  ## 詳細については https://meta.discourse.org/t/14857 を参照してください
  #DISCOURSE_CDN_URL: //discourse-cdn.example.com

  DISCOURSE_MAXMIND_LICENSE_KEY: [REDACTED]

## Dockerコンテナはステートレスです。すべてのデータは/sharedに保存されます。
volumes:
  - volume:
      host: /var/discourse/shared/tabletpcreview
      guest: /shared
  - volume:
      host: /var/discourse/shared/tabletpcreview/log/var-log
      guest: /var/log

## プラグインはここに配置します
## 詳細については https://meta.discourse.org/t/19157 を参照してください
hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git

## ビルド後に実行するカスタムコマンド
run:
  - exec: echo "カスタムコマンドの開始"
  ## 初回登録時の「差出人」メールアドレスを設定したい場合は、コメントを解除して変更してください。
  ## 最初の登録メールを受け取ったら、行を再度コメントアウトしてください。一度だけ実行する必要があります。
  #- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
  - exec: echo "カスタムコマンドの終了"

編集:奇妙なことに、セーフモードでプラグインを無効にすると、サイトは機能します。ただし、有効にしたままにすると機能しません。私の唯一のプラグインはDocker Managerですが、なぜロードに失敗するのでしょうか?

これは機能します:https://forum.tabletpc.review/?safe_mode=no_plugins

これは機能しません:https://forum.tabletpc.review/?safe_mode=no_themes

右、ただし現時点では、何もインストールされていないクリーンな状態ですが、サイトが読み込まれません。YAMLファイルを確認してください。プラグインはありません。テーマもありません。テーマコンポーネントもありません。最初から設定していますが、無限ローディング画面が表示されます。Docker Manager以外のプラグインはありません。これが機能しない理由が非常にわかりません。

「いいね!」 1

はい、すみません、それは紛らわしいですね!

「いいね!」 1

ですので、beta は忘れて tests-passed に切り替えてビルドを復旧できるか確認し、その後少しずつ戻していくのが良いと思います。

「いいね!」 2

確かに。別の環境でクリーンインストールを試してみます。ベータ版は現在壊れているようです。過去には、.ymlでベータ版をターゲットにすることができました。Docker Managerプラグインに後方互換性のない破壊的な変更があったと推測しています。

「いいね!」 1

うまくいきました。Docker Manager にベータ版を壊すような破壊的な変更があったに違いありません。(したがって、メインのコンテナターゲットとしてベータ版を使用している方への警告です。アップグレードしないでください!)

確認を進めており、メインライン / tests-passed の原因となっているプラグインについて良い見通しがついたと思います。

「いいね!」 1

評決:私のようにそれにしがみついている人にとっては、Ember 5 では Retort はもう使えません。:frowning: その機能を維持するための代替案を検討中です。

「いいね!」 1