新規インストールが失敗します(クリーンインストール)

147425 と関連がある可能性がありますが、私のケースは移行ではなく新規インストールだったため、新しいスレッドを開始しました。

Docker スクリプトを使ってセルフインストールを設定するために、クリーンな Ubuntu 18.04 のインスタンス 2 台(Linode と Digital Ocean)で試しましたが、どちらも同じエラーが発生しました。

エラーのスクリーンショット

エラーの出力

== 20180917024729 RemoveSuperfluousColumns: migrating =========================

WARNING
-------------------------------------------------------------------------------------
マイグレーションでカラムの削除またはリネームが試行されました
使用された SQL: 'ALTER TABLE user_profiles DROP COLUMN IF EXISTS card_image_badge_id'

カラムの削除またはリネームには、`rails g post_migration` を使用してデプロイ後のマイグレーションを生成してください。

なお、影響を最小限に抑えるためには、ActiveRecord モデルで self.ignored_columns = ["column name"] を設定してください。これは約 6 ヶ月後に削除できます。

この保護機能は、現在ライブアプリケーションで使用されているカラムを誤って削除するのを防ぐためにあります。

I, [2020-04-09T15:07:30.875957 #1]  INFO -- : 非同期プロセスを終了中
I, [2020-04-09T15:07:30.876041 #1]  INFO -- : HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/10/bin/postmaster -D /etc/postgresql/10/main pid: 64 に INT を送信
2020-04-09 15:07:30.876 UTC [64] LOG:  高速シャットダウン要求を受信
I, [2020-04-09T15:07:30.876354 #1]  INFO -- : exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 181 に TERM を送信
181:signal-handler (1586444850) SIGTERM を受信し、シャットダウンをスケジューリング...
181:M 09 Apr 2020 15:07:30.954 # ユーザーによるシャットダウン要求...
181:M 09 Apr 2020 15:07:30.954 * 終了前に最終的な RDB スナップショットを保存中
181:M 09 Apr 2020 15:07:30.959 * DB をディスクに保存しました
181:M 09 Apr 2020 15:07:30.960 # Redis が終了準備完了、さようなら...
2020-04-09 15:07:30.880 UTC [64] LOG:  アクティブなトランザクションを中止中
2020-04-09 15:07:30.886 UTC [64] LOG:  ワーカープロセス: logical replication launcher (PID 73) が exit code 1 で終了
2020-04-09 15:07:30.894 UTC [68] LOG:  シャットダウン中
2020-04-09 15:07:31.151 UTC [64] LOG:  データベースシステムがシャットダウンしました


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' が失敗しました。戻り値: #<Process::Status: pid 12943 exit 1>
失敗場所: /pups/lib/pups/exec_command.rb:112:in `spawn'
以下のパラメータで exec が失敗しました: {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
90378b39f271ddf9c4ba2628e28ceffd9ede8f3c6cdb4815b12f8b3ae5a218ac
** ブートストラップに失敗しました ** 上にスクロールして、より早い段階のエラーメッセージを確認してください。複数のエラーが含まれている可能性があります。
./discourse-doctor で問題の診断が役立つ場合があります。

関連するコミットを元に戻しました。もう一度お試しください。

「いいね!」 1

はい、DNSを切り替える必要がありますので、約1時間かかります。後ほどご連絡いたします。ありがとうございます。

はい、@sam が月曜日に(オーストラリア時間)確認します。

「いいね!」 1

インストールが正常に動作するようになりました。お手伝いいただき、ありがとうございます!

月曜日に確認しても意味がありません。なぜなら、コードの読み込みを回避する特定のコミットがあったからです。

「いいね!」 3

以下の通り修正しました:

SafeMigrate 上でオーバーライドを実行するマイグレーションがいくつか存在したため、Zeitwerk がこれを自動読み込みしていました。

クラス内でこれを無効化しました。

「いいね!」 4