こんにちは、
ホストを変更しました。古いインスタンス(最新の Discourse バージョン)から、サムネイルを含めるオプションを有効にした完全バックアップを取得しました。
ドメインの IP アドレスを変更した後、新しい Discourse インスタンスを最初にインストールしました(Docker を使用したクラシックなインストール)。
その後、バックアップを /var/discourse/shared/standalone/backups/default にコピーし、新しいインスタンスから復元しました。
すべて正常に進みましたが、トピックにメッセージが含まれていません。
ログには問題なさそうです。ログインもでき、トピックが空であることを除けばすべて正常です。
何かご存知でしょうか?問題がある場合、どこを確認すべきでしょうか?次に何をすべきでしょうか?
英語ではないテキストをお詫びします:
問題を解決しました。
CSP 設定が復元時に強制的に有効化されていました。いくつかのテーマコンポーネントが CDN を使用してスクリプトを宣言していました。これらのスクリプトはホワイトリストに登録されておらず、JS エラーによりトピックのメッセージが表示されませんでした。
セキュリティの向上は常に歓迎されますが、バックアップ設定を変更されるとは思いませんでした。新規インストールであれば理解できますが、バックアップからの復元ではそうではありません。単なるバックアップ/復元の問題ではないため、最初はブラウザのコンソールを確認するとは思いませんでした。Discourse の構築には非常に時間がかかるため、このような些細な問題で多くの時間やエネルギー、睡眠を失ったことを認めざるを得ません。
とにかく、もうわかりました。皆さんもご注意ください!
gerhard
(Gerhard Schlager)
3
問題の原因がわかってよかったですね。
もし、Discourse の全く同じバージョンでバックアップを復元した場合、これはバグとみなすことができます。その場合はどうでしたか?Discourse の古いバージョンからのバックアップを新しいバージョンで復元する場合、システムの動作が異なることを想定する必要があります。
CSP の問題は、テーマコンポーネントの作成者に報告しましたか?少なくとも、他の人が同じ問題に直面するのを防ぐことができるかもしれません。
おそらく新しい方でしょう。新しいバージョンのリリース時にのみアップグレードを行うため、新しいインスタンスをインストールすると、テストを通過した最新バージョンが取得されます。
いずれにせよ、新旧に関わらず、非常に特殊な事情がない限り、既存の設定はどのような方法でも変更すべきではないと私は考えます。また、同じベースバージョンからであれば、バックアップが同じ動作をするはずだと期待します。もし変更があるなら、少なくともDiscourseに接続した際に警告を表示する(例:「セキュリティ上の理由により、CSP設定が有効化されました」など)ことが望ましいでしょう(あるいは他の種類の変更についても同様です)。
Remah
(Just another happy Discourse user)
5
これの意味するところについて考えてみてください。あなたが望むことは、業界全体の方向転換を必要とします。
現在、インシチュアップグレードに適用されるルールは、古いデータベースを復元する場合にも適用されます。これはアプリケーションにとって一貫性があり予測可能な動作です。
設定に変更を加えたくない場合は、アプリケーションの全く同じバージョンを使用するのが標準的な方法です。
RGJ
(Richard - Communiteq)
6
わかりません。OP はバックアップが最新版から取られたと言っているので、その場合は追加のマイグレーションは不要ではないですか?
「最新」とは、GitHub の test-passed ブランチの最新のコミットではなく、最新のリリースを指していました。
ただし、ベースバージョンは同じ 2.4.0.beta9 です。
私たちが話しているのは、バックアップと設定値のみであり、その他は関係ありません。Discourse のバージョン、データベースの変更などは無関係です。管理者に通知することなく、バックアップから設定値を変更する正当な理由は一つも見て取れません。Discourse はこれらの特定の設定でカスタマイズされているのですから、より新しい Discourse バージョンでバックアップを復元するだけで、あなた自身の設定値が恣意的に変更されるのは理にかなっていません。
前述の通り、特定の設定の値を変更する必要がある場合、Discourse が管理者に何が起こっているかを伝えることを期待したいです。これは単に透明性を保ち、管理者の負担を軽減することです。私の主張は、正当な理由がない限りユーザー設定を変更すべきではなく、もし理由があるなら、その旨を管理者に通知することは当然であるということです。