Discourse 本番インスタンスをテストサーバーに 1:1 で移行

こんにちは、私はあるコミュニティの管理者ポジションを引き継ぎ、現在フォーラムを最新の状態に戻すという課題に直面しています。

長期間アップデートされていなかった理由は、Calenderプラグインに問題があったためです。

私は別のサーバーを借り、まず本番環境の1:1コピーをそのサーバー上で動作させたいと考えています。

私は古いバージョンを使用しているため、その方法がまだわかりません。なぜなら、新規構築時には常に最新バージョンが取得されるからです。

私たちの環境は以下の通りです:

Discourse 3.2.0.beta1-dev (19567daeb9)

以下のプラグインとそのバージョンを使用しています:

また、PostgreSQL 13を使用しています。

まず、古いバージョンの1:1コピーを動作させ、それを全体バックアップで保存し、そこからインスタンスを壊さずにアップデートプロセスを開始する方法を検討したいと考えています。機能する方法が見つかり次第、本番インスタンスも同様にアップデートする予定です。

現在の課題は:

古いバージョン(古いPostgreSQLデータベースと古いプラグインを含む)の1:1コピーをどうやって作成するか?

初心者として、ヒントやリンクをいただければ大変感謝します。

皆様の時間に感謝し、よろしくお願いいたします。

Richarde

「いいね!」 2

こんにちは!

これは良い出発点かもしれません:

「いいね!」 2

ご協力ありがとうございます!

私が理解している限り、バックアップにはソフトウェア(つまりプラグインやそのソフトウェアのバージョン)も、Discourse自体のバージョンも含まれていません。したがって、今回の件には適していないようです。

幸いなことに、私たちのアップデートを妨げていたプラグインは、現在のDiscourseの最新バージョンと互換性が戻っているため、最新版を搭載した新しいサーバーをセットアップし、そこにバックアップを復元することができました。

しかし、一部の人々(私たちのコミュニティでも、プラグインがソフトウェアと互換性がなくなった時期に該当する人々)にとって、このような場合にテスト環境として1:1のコピーを構築し、本番環境に影響を与えることなく安全な環境でさらなるステップをテストする方法を知ることは非常に役立つでしょう。

「いいね!」 2

VPS全体をクローンできるプロバイダーを使用している場合、それを探る近道になるかもしれません。

また、rsyncを使用したサイト移行のこのプロセスは、サイト全体を1対1で移行できるようです…
Move a Discourse site to another VPS with rsync - Community wiki / Sysadmins
[編集: 指定された再構築を行う場合、1対1ではありません。再構築なしで起動する必要があります。)

基本的なプロセスは非常に簡単に見えますが、アプローチやコマンドパラメータを変更したコメントがたくさんあります。私は自分でやったことはありません。もしやらなければならないとしたら、基本的なことから始めて、どうなるか見てみると思います。コメントでは、いくつかの潜在的な落とし穴が議論されています。

しかし、それはフォーラムの再構築を伴うのではないでしょうか?

しかし、うまくいくかもしれません。

(ついでに、このトピックはリンクされたトピックとどう違うのですか?)

私自身が引用したものは試したのですが、うまくいきませんでした。
プロバイダー経由でスナップショットと1対1でやり取りし、httpsを無効にしました。

Rails経由で設定を変更するなど、多くのことを試しましたが、うまくいきませんでした。そのため、スナップショット経由の方法はまったく機能しません。そこで、ここではその方法を尋ねています。(すでに問題を解決したとしても、将来的に役立つかもしれません)

はい、それは再びアップデートにつながります。なぜこれが機能しないのか。

皆さん、ありがとうございます。

うっ、はい、よく気が付きました。遅くまで起きていたのでしょう。しかし、Pfaffman のアイデアは興味深いですね。

「いいね!」 1

同じコンテナを使用して別のサイトを作成することで、どのような問題を解決しようとしていると考えていますか?

もしそれがやりたいことなら、イメージを構築し、両方のサイトのリバースプロキシの後ろで起動するのが良いでしょう。

また、まだサポートされていない新しいイメージがあり、直接起動できるものもあるので、それらに関するトピックを探してみるのも良いかもしれません。