セルフホスティングに関する混乱が解消

(私のレベル:Wixでいくつかのやや複雑なウェブサイトを作成、プログラミング初心者)

今、少しは理解が深まった大きな混乱の一つは、Discourseのセルフホスティングが「ウェブホスティング」とは大きく異なるということです。

1) Discourseのセルフホスティングがサーバーを必要とするということは、全く別のことを意味するんですよね?(そのため、一般的に宣伝されているウェブホスティングの価格と大きな差があるのは正しいでしょうか)

2) つまり、「VPSホスティング」はDiscourseのセルフホスティングに関連する同義語でしょうか? それとも他にも選択肢がありますか? 別の種類のセルフホスティングはありますか?(自分のハードウェアでホスティングする方法は承知しています)

3.1) 次に「マネージドホスティング」ですが、これはVPSタイプのホスティングの上に提供されるサービスでしょうか?
3.2) これはずっと高価ですか?
3.3) 具体的に何をしているのですか?
3.4) 初心者の貧乏学生として小さなフォーラム(月間約100ユーザー)を始める場合、マネージドホスティングなしでも可能ですよね?

Discourseのホスティングについてオンラインで何時間も調べていましたが、以下の引用元の投稿は、ホスティングの選択に役立つ最も有用で包括的な概要の一つでした。

この引用された点について、誰か以下のことを明確に説明していただけますか:

4.1) これはサーバーのメンテナンスについて話しているのでしょうか? DigitalOcean(DO)やHetznerを使う場合、これはすでに含まれているのでしょうか? それとも別の種類のサービスに含まれるのでしょうか? 何と呼ばれますか?
例えば、DOの1クリックドロップレット機能を使う場合、これはそのメンテナンスを含んでいるのでしょうか? それともそれはセットアップに関することだけでしょうか?

4.2) 私の様なフォーラムの場合、「メンテナンス」にはどのくらいの時間と知識レベルが必要ですか?

4.3) @topheeは「様々な理由から、Discourseフォーラムの管理者はマネージドサーバーをほとんど使用していません」と言いましたが、なぜでしょうか?

この決定木も非常に役立ちましたが、情報が古い可能性があります。今ではいくつかの項目が簡単になっているようでしたら、教えてください。

5.1) SSHが何なのかよく分かりませんが、このグラフによると、すべてのセルフホスターが必要なのでしょうか?
5.2) 「DO、MailGun、DNSの管理に慣れている」とはどういう意味でしょうか? 私の様なフォーラムの場合、これらの管理にはどのくらいの時間と知識レベルが必要ですか?

ご質問にお答えしますが、いくつかの用語が重複しているために混乱が生じている可能性があります。

このフォーラムのメンバーが「セルフホスティング」について言及している場合、それは自分のサーバーでDiscourseのインスタンスを実行することを指しています(詳細は後ほど説明します)。「マネージドホスティング」については、ホストが提供するハードウェア上でDiscourseのインスタンスを実行するサービスを提供することを指しています。「マネージドホスティング」とは、Discourseのインスタンスがサービスによって管理され、Discourseのインスタンスの更新や、Discourseが実行されているオペレーティングシステムの更新と適切な動作をホストが処理することを意味します。

Discourseを「セルフホスティング」するには、インターネットにアクセスできるサーバーと、サーバーを指すように適切に設定されたDNSサービスが必要です。サーバーは、あなたの施設で実行されている実際のハードウェアでも、VPS(Virtual Private Server)でも構いません。VPSとは、あなたの施設にあるかのように完全に制御できるが、リモートでアクセスできるサーバーハードウェアです。「リモートでアクセスする」とは、SSHやFTPなどのツールを使用してサーバーにアクセスし、制御し、ファイルを転送することを意味します。

SSHは「Secure Shell」の略です。セキュアシェルは、基本的に暗号化されたトンネルを介して実行されるコマンドプロンプトです。コマンドプロンプトからサーバーを実行することに慣れていますか?

シェル、ターミナル、コマンドライン、コマンドプロンプトはすべてほぼ同じ意味を持ちます。ターミナルウィンドウを使用してコンピュータを実行し、プロンプトにコマンドを入力することです。私が今言ったことがすべて別の言語のように聞こえる場合、これは試みる前にいくつかの学習が必要になるかもしれません。

VPSをレンタルすると、新しいサーバーの認証情報とIPアドレスが提供されます。通常、購入時にオペレーティングシステムの選択肢が与えられます。PuTTYなどのターミナルプログラムや、コンピュータのターミナルウィンドウを使用してサーバーにログインします。FilezillaなどのFTP(File Transfer Protocol)プログラムを使用して、コンピュータからVPSにファイルを転送できます。

VPSをレンタルし、SSHを使用してログインすると、サーバーにDiscourseのインスタンスをインストールし、Discourseを「セルフホスティング」できます。Discourseのインスタンスと、それが実行されているサーバーを完全に制御できます。通常、Discourse自体の組み込み管理ツールを使用してDiscourseを最新の状態に保つことができますが、場合によってはコマンドプロンプトを使用して手動で更新する必要があります。また、データのバックアップを作成し、それらを復元する方法を知っておく必要があります。Discourseは自動的にバックアップを作成しますが、必要に応じてダウンロードして安全に保管しておく必要があります。

VPSを使用すると、Discourseのインスタンスが実行されているオペレーティングシステムを維持する必要があります。これには、オペレーティングシステムの知識と、それを最新の状態に保ち、適切に実行する方法が必要です。VPSを壊した場合、通常、VPSホスティングサービスが実行できるのは、オペレーティングシステムを消去し、新しいバージョンを再ロードすることだけです。オペレーティングシステムを再ロードする必要がある場合に必要な重要なデータのバックアップも作成する必要があります。

一度設定して実行すると、これがかなり簡単に維持できます。あなたが何をしているのか知っている場合。あなたのスキルについての説明から、あなたがそれに対処できると思います。これらすべてを行う方法を学ぶ最善の方法は、試してみることです。VPSのレンタルは現在かなり安価です。サーバーを設定し、Discourseを起動して実行し、質問がある場合はここやask.discourse.orgにアクセスしてください。

ただし、あなたが運営するフォーラムに多くのトラフィックがない場合、それは独自のものではありません。あなたがそれを壊した場合、あなたはただやり直すことができます。多くの人があなたのフォーラムに参加して投稿を始める場合、それを維持し、バックアップする必要があります。既存のフォーラムや、プロモーションやサポートしたい製品がある場合、ホスティングプロバイダーをチェックしてみてください。あなたがただ遊び回って学んでいる場合… 行ってください。

Discourseのホスティング = 自己ホスティングではありません

私は経験豊富な自己ホスターであり、いくつかの複雑な設定を行ってきました。また、以前Discourseで働いていたこともあるため、これらの2つの概念についてある程度の知見を持っています。あなたが少し混乱しているように見えますので、いくつかの点を明確に説明してみますが、これは決して網羅的な説明ではなく、長文になるかもしれません。どこからそのようなフローチャートを取得したのかはわかりませんが、それは正確ではありません。

Discourseのホスティングは、その名の通り、Discourseが有料であなたのサイトをホスティングするサービスです。すでに気づいているかもしれませんが、無料から始まるさまざまな価格帯のプランがあり、上位プランほど多くのオプションが提供されます。エンタープライズプランは最高級で最も高額ですが、最も多くのオプションと、トップクラスのサポートチームのサービス、カスタムデザインや開発オプションを提供します。マネージドホスティングも同様です(Discourseのホスティングはマネージドホスティングの一種です)。また、CommuniteqやLiterate Computingなどのパートナー企業も同様のサービスを提供しています。これらのパートナー企業は、ホスティングとは別に、開発やサポートサービスも有料で提供しています(私も同様です)。開発や専門的なサポートは通常無料ではないことに留意してください。これが#marketplaceの目的です。さらに、Discourseのホスティング価格構造が高額に思えるかもしれませんが、多くの有名企業が、非常に大規模で活発なエンタープライズフォーラム(多くはプライベート)のために高額を支払っていることをお伝えできます。Discourseが提供するSLAやサポート/開発サービスのレベルは、彼らのビジネス活動がそれを求めているためです。例えば、技術企業や金融機関であり、DDoS攻撃によって6桁のダウンタイムやサービス損失を被る場合、または大規模な従業員向けに非常にカスタマイズされたプロフェッショナルなインターフェースが必要な場合、エンタープライズホスティングへの投資は十分に価値があります。

自己ホスティングは、その名の通り、レンタルサーバー(または所有する物理サーバー、ただしこれは別の高度な問題を引き起こすため推奨しません)で自分のサイトをホスティングすることを意味します。自己ホスティングは、単にサーバー(またはVPS - 仮想プライベートサーバー)をレンタルしてSSH接続するだけではありません。自己ホスティングの管理者になるには、ある程度の知識が必要です。Wixでいくつかのウェブサイトを作成した経験のある初心者プログラマーは、Discourseの自己ホスティングの観点からはあまり役に立ちません。これらは全く異なるスキルレベルを要求します。SSHについてまだ知らないという事実は、その分野で成長が必要であることを示唆しているかもしれません。 Secure Shell - Wikipedia

学習に興味がある場合、標準的なインストールドキュメントから読み始めて、そこからコツを掴むことをお勧めします。人によっては容易に理解できる人もいれば、難しい人もいます。ウェブサイト管理の経験があることは、より早く学習するのに役立つかもしれません。SSHでサーバーに接続できることは一つですが、コマンドラインインターフェースに慣れ、Docker管理の基礎やコンテナの動作を理解する必要があります。あなたが小規模なサイトを持っていると仮定すると、標準的なインストールで十分始まり、組み込みプラグインや追加したい他のプラグインにアクセスできます。つまり、自己ホスティングのDiscourseインスタンスは、Discourseのホスティングサービスと同じエンタープライズレベルのDiscourseフォーラムを所有しているようなものですが、専門的なサポートや稼働時間SLA、パフォーマンス(例えば、再構築やアップデート時にダウンタイムが発生しますが、Discourseのホスティングではこれらをダウンタイムなしで行ってくれます)を除きます。

自己ホスティングを学ぶことに何の理由もありませんが、何もないものは無料ではなく、求めるサービスやスケールによってコストが決まることを覚えておいてください。VPSサービスによっては価格が異なります。@pfaffmanがまとめたリストが、判断に役立つかもしれません。例えば、私は3つのDiscourseサイトを所有しており、すべてHetzner上にありますが、サーバーのサイズと関連するコストが異なります:2つのサイトはCloudflare CDNの背後にあるデュアルコンテナインストールで、アップロードとバックアップにはR2(S3互換)オブジェクトストレージを使用しています。もう1つはテスト用の標準インストールです。以前DigitalOceanを使用しましたが、比較的高額です。しかし、標準インストールを学ぶ人々には推奨されています(ただし、Hetznerとの違いは大きくなく、私はHetznerのダッシュボードを好んでいます)。

Discourseやそのパートナーホスティング企業にホスティング管理を委託せず、無料プラン以上の機能が必要な場合、いくつかの研究と読書を行い、自己インストールを試みることをお勧めします。app.ymlファイルとは何か、それをどのように編集するか、ネームサーバーやメールサービスをどのように設定するかを学びます。これが、自己ホスターとして自分のDiscourseインスタンスを構成する方法を学ぶ出発点です。一部のVPSサービスでは、短期間でのテストや学習のために、非常に安価にサーバーをレンタルできます。

これはかなり良いチャートですね。私より前に投稿した皆さんの意見には全て同意します(ただし、初心者がLLMを使ってサポートを得るのは強く反対します。LLMは非常に頻繁に明らかに間違った回答をするためです)。しかし、「セルフホスティング」という用語は幅広い意味を持つため、ここで明確に区別する必要があります。

もしあなたが:

  • 自分のハードウェアでLinuxを実行することに慣れている(あるいは15年前のRedditのスレッドを読み解く辛さを我慢できる)
  • 大手テック企業にお金を払う余裕がない
  • 安定した24時間365日のインターネット接続と電力を確保できる
  • ISPによる制限がない(ポート80/443の閉鎖や動的IPv4など)
  • 基本的なネットワーク設定(ポートフォワーディングなど)ができる
  • 予備のコンピュータがある(SSDがあれば、実用的には4GBのDDR3メモリを搭載した古いオフィスPCでも問題ない)

…であれば、自分のハードウェアでのホスティングを強くお勧めします。ここではよく悪い評判を浴びせられますが、その理由が私にはわかりません(変動性のためでしょうか?)。しかし、もしあなたがそれに対応できる能力を持っているなら、ぜひ試してみることをお勧めします!セルフホスティングは私の常套手段であり、若くてクラウドサービスにお金を払えなかった頃は素晴らしいものでした。今でも、安価で予測可能であり、自分の好きなように設定できるという理由から、ローカルサーバーでのセルフホスティングを選びます。

セルフホスティングには学ぶべきことがたくさんあります。自分のハードウェアやVPSにうまくインストールできたとしても、まだ多くの作業が残っています。もちろん、これらのすべてをスキップしてホスティングプランを選ぶこともできますが、お金を節約したいのであれば、セルフホスティング(特に自分のハードウェア上での)は素晴らしい選択肢です。

例えば、家に余っているパソコンで動かすなら、そのパソコンを24時間365日稼働させ、おそらくCloudflare Tunnelも設定する必要があるでしょう?だから、私は単にサーバーをレンタルして、ドメイン名を取得し、メールサーバーを用意する方向を好みます。セルフホスティングを始めた当初は、飛び交う専門用語にかなり混乱しましたが、Discourseにはしっかりしたドキュメントがあり、CLIインストーラーによるインストールはガイド付きのプロセスなので、初心者でも実はそれほど難しくないと思います。

必ずしもそうではありません。多くのルーター(基本的なモデルやISPのゲートウェイを含む)はポートフォワーディングをサポートしており、特にリバースプロキシが利用可能な場合、これが推奨される方法です。Cloudflare Tunnelは、ポートフォワーディングができない場合や、ネットワーク設定をいじりたくない場合にのみ推奨します。

ここには重要な考慮事項が欠けています。ポートを公開インターネットに向けて開くことで悪用されうるあらゆる攻撃ベクターに対処できるかどうか、自宅のファイアウォールが準備できているとは確信できません。一般的には、ポートを直接開くことは避けるようアドバイスします。cf tunnels(Cloudflare Tunnels)のようなものを使用して、自宅のIPアドレスがDDoS攻撃の対象となったり、他の多くのネットワークからBANされたりするのを防ぎましょう。

Unifiネットワークは、誤って悪意あるものとして識別したシグネチャ(主にSoulseekとMinecraft)をブロック解除する以外の介入がほとんど不要な状態で、自動的にファイアウォールをセットアップして維持してくれるため、私はこれを当然のこととして捉えていたのかもしれません。Cloudflareトンネルは、ISP関連のボトルネックの大部分に対して優れたソリューションですが、セキュリティの観点から正確なコメントをするために使用したことはなく、DNSでオレンジクラウドを使用するとDDoS保護などすべての機能が組み込まれてより高いセキュリティが提供されることは知っています。

インターネットは危険な場所であり、パブリックウェブに何かを公開すると、ボットに見つかり攻撃を試みられるリスクがあります。CFトンネルは、その一部を防ぐのに優れていますが、自動ボットスキャナーのトラフィックを完全に止めることはできず、100%安全なプログラムなど存在しません。

Unifiは、適切に設定されたファイアウォールが本来行うべきことを実行しますが、野良環境で未修正の脆弱性が実際に悪用されているかどうか、いつ発生するかが常に把握できるわけではありません。

家庭用回線においてポートを開けないこと、特に重要なデータや個人データを扱うホームラボやサービスを提供している場合のその理由としては、ポートが開いていると適切に保護されていない場合、家庭用ネットワークへの不正アクセスを許す可能性があります。

Cloudflareのトンネルのようなものを経由してルーティングする利点は、家庭用ネットワークが直接公開されないことです。Cloudflareを仲介として使用し、その規模を考えると、新たな脅威を防ぐためのフィルタリングがより積極的に行われる可能性が高いです。

私たちが言いたいのは、セルフホスティングにはLinuxのシステム管理とセキュリティに関する一定のスキルが必要だということです。

より低コストな方法を選択するほど、それだけ専門知識と労力が求められます。

できる限り早く返信しました。抱えていた各疑問に対する、非常に考えが深く詳細な回答を一つ一つ注意深く読み込み、消化するのに少し時間がかかりました。返信は非常に役立ち、読んでいて思わず微笑んでしまいました。多くの混乱が解消され、今では多くのことが何を意味し、何を伴うのかを本当に理解できるようになりました。特別な魂の集まりで、素晴らしいコミュニティですね。

まだ残っている疑問がいくつかあります。
1) DigitalOcean(DO)などのVPSプロバイダーも、Discourseのマネージドホスティングを提供しているのでしょうか?
2.1) 私のタイプのフォーラムでVPSをDiscourse用に維持・管理するには、どのような時間と知識レベルが必要ですか?
2.2) @tophee は「さまざまな理由から、Discourseフォーラムの管理者はマネージドサーバーをほとんど使用しません」と言っていました。なぜでしょうか? これは少しのアドホックな作業が必要ですが、それほど多くの作業ではないからでしょうか?
3) SMTPとDNSの管理について、私のタイプのフォーラムにはどのような時間と知識レベルが必要ですか?

この文脈では全く慣れていません。チュートリアルに従ってPCに何かをインストールしたり修正したりする際に、自分が何をしているのかほとんど理解せずに、コマンドプロンプトを最小限に使用した経験しかありません。
@Andrew_Rowe は「運営するフォーラムにトラフィックがあまり来ない場合、それは独自には起こりません」と言っていました。
これは、SEOと発見可能性に関する私の懸念に触れています。
4) フォーラムのコンテンツが一定であると仮定します。無料のDiscourseホスティングとセルフホスティングでは、フォーラムのSEOと発見可能性はどのように比較されるでしょうか?
これは大きな要因となって大きな違いを生むのでしょうか? Discourseの無料プランは、非マネージドVPSを使用する初心者によって適切に設定されたセルフホスティングセットアップよりも、この点で非常に最適化されており、優位に立っているのでしょうか?
それとも、これは大きな違いを生む要因ではないのでしょうか?
セルフホスティングされたDiscourseを更新するだけで、この点でDiscourseの無料プランと同レベルになるのでしょうか?

@Lilly 長い説明をしてくださり、心から感謝しています。あなたの返信にあるいくつかのコメントの背後にある仮定は私には当てはまらず、すでに返信を読む前に投稿でそれらを明確にしていました。

:backhand_index_pointing_up:これは、あなたの多くの有益な洞察の一つで、より明確な見通しを与えてくれました。

これは私の別の懸念に触れました。計算パフォーマンスや仕様の問題ではなく、適切なセットアップとメンテナンスの問題です。
5) DO/Hetznerは、非常に安価な(もちろん正規の)VPS(例えばこのIONOS https://www.ionos.com/servers/vps)と比較して、大きな違いをもたらしますか?
それにより作業負荷が増えるのでしょうか? このようなものを避けるべき他の問題はあるのでしょうか?

@darkpixlz 返信ありがとうございます。自分のハードウェアでのホスティングは私には別の大きな問題になりそうだと感じていたので、検討していませんでした。そして、あなたがこの特定のオプションに対して私が本当に備えていないことをさらに明確にしてくれました。

おそらく提供していないと思います。

何をしているのか理解していれば、それほど時間はかかりません。ただし…

その場合、VPS を使って Discourse を維持管理するのははるかに難しくなります。

DNS は比較的簡単です。AI の助けを借りて試行錯誤することも可能で、一度正常に動作すればタスクは完了です。また、正しく動作しているかを確認するためのオンラインツールも利用できます。

SMTP は別問題です。Discourse をセルフホスティングしている多くの人が、外部サービスを利用しています。このフォーラムで推奨サービスを検索してみてください。私は個人的に Docker Mail Server を使用していますが、ダイジェストメールはオフにしているため、メールのトラフィックはそれほど多くありません。

おっと、これは @Andrew_Rowe の発言とほぼ同じですね。返信する前に最後まで読むべきでした。

通常は提供していません。

あなたがどれほど手間をかけるかによります。私はフルタイムの作業として扱ってきましたし、何年もサーバーをアップグレードしない人も見てきました。

Mailgun などを設定するために、SMTP について最低限の知識が必要です。メールとホストが機能するために必要なレコードを作成するために、DNS について最低限の知識が必要です。

SEO は、セルフホスティングかどうかとは関係ありません。

記憶が正しければ、その理由は、コマンドライン経由で更新や修正を行いたい場合、常に完全なアクセス権限があるとは限らず、代わりにプロバイダーにこれらの作業を行ってもらう必要があるため、ある意味で自分のデータを完全に所有していない状態になるからです。ただし、この情報はまず確認してください。状況が変わっている可能性があります。

これが何を意味しているのかよく分かりませんが、私が投稿した内容について何か明確にしている部分があれば、投稿する前にそれを読んだとは考えていません。いずれにせよ、できる限り詳細に説明しようとしたので、必要な情報よりも多い情報を含んでいるかもしれません。よく分かりません。

これらのVPSサービスについては何も知りませんが、少し調べてみました…

私自身は、4GB未満のRAMや2GBのスワップファイルを作成するのに十分なディスクスペースがない環境では、小さなフォーラムでさえ運用しようとはしません。

しかし、利用規約と詳細を読み、自分が何を得ているのかを理解する必要があります。これらのサービスのいくつかは共有割り当てIPのみを提供しており、これはDiscourseでは機能しません。例えば、vps-mart.com

したがって、他の仕様が小さなDiscourseインストールには適切であっても、彼らのサービスは使用しません。

IONOS VPS Hosting | Virtual Private Servers | Starting at $2/month では、$4/月の構成が12ヶ月の契約を必要とし、IPに関する詳細がないことがわかります。したがって、自分が望んでいるものの利用規約を本当に読むことが重要です(また、Pleskを提供していることにも気づきましたが、これは必要ありません :face_vomiting:):

これは、Discourseで機能する同様のLinux構成の現在のHetznerのコストで、専用IPとroot sshアクセスを提供します:

一番簡単な確認方法は、Digital Ocean でのセルフホスティングに関する Discourse 公式の30分インストールガイドに従うことだと思います:

私が初めてこの手順に従ったとき、DNS、SMTP、SSHのセットアップに関する事前の経験はほとんどありませんでしたが、すぐにフォーラムのセットアップに成功しました。今では何度も経験したおかげで、これらの手順は非常にわかりやすくなっています。

もしそのフォーラムを使わなくなったら、後で削除すればよいでしょう。

もし何か問題が発生した場合は、このサポートフォーラムで気軽に質問してください。ここにはあなたを助けるための既存の情報がたくさんあります。

これらの手順が管理可能だと感じれば、セルフホスティングができるはずです。もし難しすぎたり、時間がかかりすぎたりする場合は、マネージドホスティングの方が適しているでしょう。

時には、考えすぎることがありますが、実際に試してみることで、多くの質問に答えが見つかることもあります!

正確な数値は持っていませんが、Discourse インスタンスの多くは、Discourse.orgCommuniq.com、およびおそらく他のいくつかの小規模なプロバイダーによって管理ホスティングとして運営されています。

管理ホスティングプロバイダーが通常、顧客にコンソールアクセスを提供しないことは事実です。プロバイダーは、完全に制御できないシステムのセキュリティ、安定性、およびメンテナンスについて責任を負うことはできません。

しかし、それが顧客がデータを所有していないことを意味するわけではありません。もちろん、顧客はデータを所有しています。

私たちの顧客の中には、時々サポートチケットを開いて、rails c スクリプトを実行するように依頼してくる人もいます。私たちはスクリプトのセキュリティと妥当性を確認し、実行し、要求に応じて出力を提供します。自分自身で実行するよりも所要時間が少し長くなるかもしれませんが、代わりに追加の妥当性チェックを余分なコストなしで受け取ることができます。

管理ホスティングを使用すると、更新を自分で行う必要もありません。これはプロバイダーによって処理されます。特に、緊急のセキュリティアップデートは、各サイト管理者が問題を認識して対応するのを待たずに、通常迅速に展開できます。

非常に参考になりました。フォローアップの疑問点を明確にしてくださった @Andrew_R Rowe @Lilly @pfaffman @NateDhaliwal @RGJ @traceymoko に感謝します。今では状況がずっとクリアになりました。総合的に判断すると、私の目標に特化した基本的な機能を実現できるほぼ唯一の方法であるため、VPS によるセルフホスティングを強く検討しています。

さらに背景を説明すると、Web 開発は私の専門分野ではありません。主な活動は私が運営する小さな慈善団体で、そこには私の集中力、時間、努力、そして限られた資金の大部分を注ぐ必要があります。そのため、少ないリソースで最大限の効用を得られ、無駄な出費や労力を最小限に抑える方法を模索しています。そのため、私の本来注力すべきべきことから多大なコミットメントを奪う別のプロジェクトを作り出すことへの懸念があります。

すでにウェブサイト構築に多くの時間を費やしてしまいました。だからこそ、さらに別のものを作り出すことに懸念を抱いています。私は STEM(科学、技術、工学、数学)分野の強いバックグラウンドを持ち、学習能力も実装能力も備えているため、それが主な不確実性ではありません。また、一度構築すればあとはほぼ自動で稼働するものであれば、初期コストが高くても問題ありません。しかし、もし継続的なメンテナンスが必要で、このアプローチにどれほどの時間がかかるのかについては、まだ見当が付きません。近い将来、リソースが十分になり、これを外部に委託できる状況になるかもしれません。その際には、ここで助けてくださった皆さんを思い出します。しかし現在、私は「時間」と「リソース」の両方が限られているというジレンマに直面しています。自分で挑戦してみますが、非常に慎重な気持ちを抱いています。

非営利団体であれば割引が適用されるはずです。以下は価格設定ページからの引用です:

「非営利団体向けの50%割引を適用するには、政府から発行された非営利団体認定書および連邦税免除証明(例:501c3認定書)が必要です。」

ぜひ確認してみてください。

ここをご覧になっていただければわかる通り、常連ユーザーの多くは非常に親切です。自分自身のセルフホスティングプロジェクトを始める際、進めながら質問すれば、多くのメンバーがヒントを共有してサポートしてくれます。あなたと同じような立場から始めた人も多く、今では活気あるフォーラムの管理者やホスティングを行っています。

私の経歴は少し異なり、IT業界で大半の時間を過ごしてきました。数年前、Discourseがホスティングしていた活発なフォーラムの管理者として役割を引き継ぎました。ホスティングサイトのサポートチャネルを通じてチームとコミュニケーションを取り、またMeta(このサイト)で読み書きすることで、多くのことを学びました。やがて十分な知識を身につけ、彼らの会社で働くという特権と喜びを得て、さらに多くのことを学ぶことができました。その後、私はその会社を離れましたが、今でもDiscourse関連の開発やサポートプロジェクトに従事しています。そして、かつて管理者として携わったあの特定のフォーラムを現在セルフホスティングしています。そのフォーラムは非常に活発で、以前と同じくらい、いやそれ以上に活気があり、カスタマイズも増えています。

正直に言うと、最も時間がかかるのは、初期の構築と、自分の希望通りにフォーラムを設定する段階です。一度フォーラムを立ち上げて設定が完了すれば、メンテナンスに費やす時間はそれほど多くなく、定期的なアップデートを行うだけで済みます。バックアップは自動化できますし、特定の構成によっては、アップデートや再構築中のダウンタイムを最小限に抑えることも可能です。CDNとデュアルコンテナ(Web用とデータベース用)を使用しているため、私の実際の再構築時のダウンタイムは30秒です。また、サイトが準備完了次第自動的にリロードされることをユーザーに通知するスプラッシュ画面を表示しながら、一連のアップデートを実行するbashスクリプトを作成しています。現在、そのフォーラムには、OS、Docker、Discourseを最新の状態に保つために、約2週間ごとに15分程度の私の時間しかかかりません。サーバーにSSH接続し、システムアップデートを行い、スクリプトを実行するだけです。もっと自動化することも可能ですが、私は少し手動での作業を好んでいます。