自分でドメインを建てる

Concurrentの運用概要

Concurrentのドメインを自分で建てたい、そう思ったこと、一度はありますよね

Overview

Concurrentはモジュラリティの思想の元、マイクロサービスのような構成を取っています。

例えば、画像ストレージサービスはストレージやそのコンテンツの配信のため、自宅サーバーで運用するにはやや重いサービスです。 Concurrentはより気軽にドメインをホストできるようにするため、これらの「重い」オプショナルな要素をモジュールとして切り出しています。

Concurrentドメインを動かすために最低限必要なサービスはgatewayサービスとapiサービスです。

続いてほぼmustなのがwebui, url-summaryサービスで、完全にオプションなのがactivitypubサービスとなっています。

これらのサービスはgatewayサービスを経由してユーザーに提供されます。

<TODO: なんかわかりやすい図>

サービス概略

  • gateway 文字通り外部とのゲートウェイとなるサービスです。認証等と各サービスへのアクセスの分配をおこなってくれます。gatewayサービスだけ外部公開することを想定しています。
  • api Concurrentの基本機能を提供するサービスです。
  • webui ユーザー登録ページを表示したり、admin panelを提供するサービスです
  • url-summary ユーザーの代わりにurlで指定されたページのogタグ等をフェッチし、プレビューを表示するための情報を集めるサービスです。(これがないとconcurrent.worldではURLのプレビューが表示されません)
  • activitypub concurrent-worldでの投稿をactivitypubとして外に公開し、また外部のユーザーのフォロー・相互通信を行うサービスです。(外部のノートをconcurrentオブジェクトにコピーして保存するのでDBを消費します)