社内チャットと会議室を、
VPSに置くという選択
Jitsi Meet、Mattermost、Rocket.Chatなどを自分の環境で運用すると、チームの情報共有基盤を自分で設計できます。
| 目的 | 候補 | 注意点 |
|---|---|---|
| ビデオ会議 | Jitsi Meet | 同時接続・帯域・音声品質 |
| チームチャット | Mattermost / Rocket.Chat | 通知・認証・ログ |
| コミュニティ | Discourse / Flarum | モデレーション・迷惑投稿 |
自社運用のメリットと責任
データの保存先や権限を自分で決められる一方、アカウント管理、アップデート、バックアップ、障害対応も必要です。退職者の権限削除やログの保持方針を決めてから導入します。
VPS.orgの公式アプリ一覧には、これらのコラボレーション・コミュニティ系アプリが掲載されています。必要なリソースは利用人数と使い方で変わります。
Rocket.ChatをVPSで運用する実装ガイド
ここからは、チームチャットのうちRocket.Chatに絞って、必要スペック・インストール・初期設定・セキュリティ・バックアップをまとめます。数値と手順はRocket.Chat公式ドキュメント(2026年10月7日確認、記載のバージョンはRocket.Chat 8.8)のものです。公式は更新されるため、導入前に最新版を確認してください。
必要スペック(公式の目安)
| 規模(公式の区分) | Rocket.Chat本体 | MongoDB |
|---|---|---|
| Starter(同時接続500人まで) | 2 vCPU・メモリ4GiB・ストレージ20GiB | 2 vCPU・メモリ4GiB・ストレージ10GiB(3レプリカの構成で記載) |
| 500人超・高可用性 | 4 vCPU・メモリ8〜12GiB・ストレージ20GiB | 2 vCPU・メモリ8〜16GiB・ストレージ20〜80GiB(3レプリカ) |
- 小〜中規模のチームなら、まずStarterの区分です。公式の数値は本体とMongoDBを分けて書かれています。1台のVPSに同居させるなら、合計に余裕を見て、メモリ8GB前後から検討するのが無難です(これは編集部の見立てで、公式の数値ではありません)。
- データベースはMongoDB 8.0以降が必要です(公式で8.2でも確認済み)。DockerやHelmで入れる場合、Node.jsは同梱されますが、MongoDBは別に用意します。
- 公式に、OSの対応表は載っていません。VPSでは、Dockerが動くLinuxを選びます(OSの選び方)。
インストール手順(Docker Compose)
公式が案内するDocker Composeの手順の流れです。事前に、ドメインのA(またはCNAME)レコードをサーバーの公開IPに向けておきます。必要なものは、Docker、Docker Compose v2、Gitです。
- 公式のDocker用ファイル一式を取得して、
.envを作ります。 .envに、RELEASE(本番ではバージョンを固定)、DOMAIN、ROOT_URL(https://自分のドメイン)を書きます。- HTTPS用に、Traefik経由の場合は
LETSENCRYPT_ENABLED=trueとLETSENCRYPT_EMAILを設定します。Nginxを使う場合は、Traefikのファイルを外して起動します。 docker composeに、公式が案内する複数の設定ファイルを-fで並べてup -dします。docker ps -aで、すべてのコンテナが「Up」になっていることを確認します。
初期設定
- 初回アクセスでセットアップウィザードが開き、最初の管理者ユーザーとワークスペースの基本設定を作ります。
- 管理者は、1人に依存しないよう2人以上にします。退職・異動のときの権限削除の手順も先に決めます。
- メンバーの追加方法(招待のみ、ドメイン限定の登録など)を決めてから、全員に案内します。
セキュリティ設定
- 外に開けるのは443(HTTPS)と、リダイレクト用の80だけです。公式は、443を全HTTPS通信の入口、27017番(MongoDB)は内部通信用としています。MongoDBのポートはインターネットに公開しません。
- ROOT_URLはHTTPSで設定し、HTTPのまま運用しません。
- 管理者の強いパスワードを使い回さず、監視画面(Grafana)を使うなら、そのパスワードも設定します(
GRAFANA_ADMIN_PASSWORD)。 - バージョンは固定したまま放置せず、更新の確認日を決めます。更新の前には、必ずバックアップを取ります。
バックアップ
チャットのデータはMongoDBに入ります。公式はmongodumpでの取得とmongorestoreでの復元を案内しています(MongoDB 4.4以降はmongodumpを別途インストール)。復元の前には、同名の既存データベースを削除する必要があります。
- バックアップは、サーバーと別の場所にも置きます。VPS内だけでは、サーバーの故障や誤削除で一緒に失います。
- アップロードしたファイルの保存先(データベース内か、サーバー上のフォルダか)は管理画面の設定で変わります。保存先に合わせて、バックアップの対象を決めます。公式のバックアップ手順には、ファイルの扱いは書かれていません。
- 取っただけで安心せず、別のサーバーで一度復元して、メッセージが戻ることを試します。
Mattermost・Jitsiとの比較
| 比べる点 | Rocket.Chat | Mattermost | Jitsi Meet |
|---|---|---|---|
| 役割 | チームチャット | チームチャット | ビデオ会議(チャットではない) |
| データベース | MongoDB 8.0以降 | PostgreSQL(14.0以降が最小) | — |
| 公式のスペック目安 | Starter:本体2 vCPU・4GiB+MongoDB 2 vCPU・4GiB | 1〜1,000人:1 vCPU・2GB(1台構成) | 4GB程度が小さな会議向け(推奨は8GB)、CPUは4コア以上を推奨 |
| 運用で気にする点 | MongoDBのバックアップと更新 | PostgreSQLのバックアップと更新 | 帯域(解像度ごとに必要量が増える)、CPUの共有・過剰割り当て |
公式の数値だけを見ると、Mattermostのほうが小さな構成から始められます。Rocket.Chatを選ぶ理由は、機能や使い慣れではなく、チームが必要とする機能をそろえているかで決めます。Jitsiは役割が違うので、チャットとは別のサーバーに置くほうが、CPUと帯域の取り合いを避けられます。出典:Mattermost公式の要件ページ、Jitsi公式ハンドブックの要件ページ(2026年10月7日確認)。
小〜中規模チームの導入者向けFAQ
Q. 10〜30人のチームで、VPSはどのくらい必要ですか?
公式のStarter区分(同時接続500人まで)に収まるため、人数そのものより、本体+MongoDBを同居させたときのメモリが目安です。まずは小さめの構成で始め、メモリ使用量を見て増やします。
Q. 自分でサーバーを管理できる人がいないときは?
更新・バックアップ・障害対応は自社の責任になります。担当者を決められない場合は、自分で運用する構成を避けるほうが安全です。
Q. 退職者のアカウントはどうしますか?
退職日に無効化する手順を、導入前に決めます。メッセージの保持期間も、この時点で決めておきます。
Q. 試すだけならどうしますか?
公式は、ローカルでの動作確認用にDOMAIN=localhostの設定を案内しています。VPSに置く前に、手元のPCで画面と操作を確認できます。