調査の結果、私が所属するテック・コープから、セルフホスト型のローカル/ステージング環境の選択肢が以下の通り提示されました。ホスティング費用を倍増させる*(随時)*という決断を下さなければならないかもしれませんが、ベストプラクティスに関するアドバイスや代替案の推奨があれば、確認する価値があると考えています。
*私たちは小規模な非営利団体であり、英国でマネージドホスティングを利用しているため、費用は決して少なくありません。
— — —
選択肢:
1. ローカル環境
長所:
- 非常に安全で隔離されている – Discourseのプラグイン/テーマ/コアコードを自由に編集できる
短所:
- パフォーマンスはかなりひどい:デフォルトではPCを再起動するたびに
docker image pullを実行し、起動するたびにbundle install(大量のRubyパッケージのダウンロードとソースビルド)を実行する必要があり、OSXではネイティブコンテナサポートの欠如によりすべてが遅いVMで実行される- WP-discourseプラグインを機能させるにはDiscourseコードへの手動パッチが必要(適用方法を理解するにはさらなる調査が必要)
- 本番環境との同期にはツールの開発が必要で、本番データをロードしても信頼性があるかどうかは不明
見積もり:セットアップに4〜6時間
2. ステージングサーバー
長所:
- 新規参加者が始めやすく、セットアップ不要
- 上流と同じバージョン、プラグインなどを比較的簡単に設定できる
- 同期は本番環境からのバックアップ復元と同じくらい簡単な「可能性がある」
短所:
- 高額な継続的費用
見積もり:セットアップに1〜2時間 + ホスティング費用
3. (安全な方法を見つけて)本番サイトでテストする
長所:
- 常に同じDiscourseバージョン、プラグイン、テーマでテストできることは確か
短所:
- 「新しい投稿!」アラートでユーザーをスパムしない方法を見つける必要がある / これを誤るとユーザーがスパムされるリスクがある。データへのリスクは小さく、バックアップからの復元が必要になる可能性がある。
見積もり:セットアップに1〜2時間