サーバーの運用

このガイドは、Antimatterサーバーをインストールして運用するシステム管理者向けです。Linux、Docker、リバースプロキシに精通していることを前提としますが、Antimatterの知識は不要です。

デプロイメントの構成

Antimatterは、Mattermostのフォークであるセルフホスト型チームチャットです。完全なデプロイメントには以下のコンポーネントが含まれます。最初の3つが必須です。

コンポーネント機能必須
AntimatterサーバーWebアプリ、API、WebSocketをポート8065で提供し、バンドルされたアプリ(プラグイン)を実行し、通話メディアをポート8443で処理するGo言語で書かれた単一のプログラム(antimatter)です。コマンドラインツールamctlで管理します。はい
PostgreSQLメッセージ、ユーザー、コミュニティ、推奨セットアップではサーバーの設定を保存するデータベースです。バージョン15以降が必要です。はい
ファイルストレージアップロードされたファイル、画像、インストールされたアプリを保存します。S3互換サービス(ComposeファイルではRustFSを使用)またはローカルディレクトリを使用します。はい
リバースプロキシサーバーの前にHTTPSを配置します。ComposeファイルのCaddyプロファイルまたは独自のnginxを使用します。本番環境向け
GIFサービス(gifs-server)GIFピッカーで使用するGIFとステッカーを、独自のカタログから提供します。Tenor APIに準拠しています。いいえ
プッシュプロキシAppleおよびGoogle経由でモバイルアプリに通知を転送します。モバイル通知向け
rtcd、TURNサーバー多数の通話に対応するための独立したメディアサーバー、および厳格なファイアウォール后面的ユーザーのためのリレーです。いいえ
AIエンドポイントコンポーザーの書き直し、要約、翻訳、読み上げ、AIエージェント、通話の文字起こしを支えるモデル。モデル接続として、クラウドプロバイダーまたは自社で運用するサーバーを追加します。いいえ

Antimatterにはライセンス料や有料版はありません。Mattermostの有料プランで提供される単一サインオン、LDAP、高可用性、コンプライアンスエクスポート、データ保持などの機能もすべて含まれています。

要件

  • 数百人のユーザーをサポートするには、amd64またはarm64のLinuxサーバー、CPUコア2個以上、メモリ4GB以上、およびユーザーがアップロードするファイル用のディスクスペースが必要です。
  • 推奨されるインストールには、Composeプラグイン付きのDocker Engine(docker compose)を使用します。パッケージを使用する場合は、systemd対応のDebian、Ubuntu、Fedora、またはRHEL互換サーバーが必要です。
  • 本番環境向け:サーバーを指すドメイン名、およびHTTPS用のポート80と443の開放。
  • 通話向け:通話するユーザーから到達可能なポート8443(UDPおよびTCP)。
  • メール向け:Antimatterから送信できるSMTPサーバー。

クイックスタート

mkdir antimatter && cd antimatter
curl -fsSLO https://antimatter.chat/compose.yaml
cat > .env <<EOF
SITE_URL=http://localhost:8065
POSTGRES_PASSWORD=$(openssl rand -hex 24)
S3_SECRET_KEY=$(openssl rand -hex 24)
GIFS_API_KEY=$(openssl rand -hex 24)
AM_AI_ENCRYPTION_KEY=$(openssl rand -base64 32)
EOF
docker compose up -d

次に、サイトのURLを開いてアカウントを作成します。最初のアカウントがシステム管理者になります。インストールでは、各ステップとその他のインストール方法について説明しています。

このガイドの内容

  • インストール:Docker Compose、イメージ、最初の管理者、.debおよび.rpmパッケージ、リリースアーカイブ。
  • 設定: データベースまたはファイルによる設定、AM_環境変数、システムコンソール、amctl、ログ。
  • ドメインとHTTPS: サイトのURL、Caddy、nginx、クライアントアドレス。
  • 通話と音声: ポート、NAT、TURN、rtcd、文字起こしと字幕。
  • メールとプッシュ: SMTP、プッシュプロキシ、モバイルアプリ。
  • バンドルアプリ: 有効なアプリ、その設定、その他のアプリのインストール。
  • AI:モデル接続、組み込みAI機能、エージェント、音声と翻訳、暗号化キー、データの保存先。
  • サインインとアカウント: サインアップ、パスワード、MFA、シングルサインオン、LDAP、ゲスト、セッション。
  • バックアップとアップグレード: バックアップ、リストア、アップグレード、Mattermostからの移行。
  • 運用: モニタリング、スケーリング、データ保持、コンプライアンス、トラブルシューティング。
  • セキュリティ: ハードニングチェックリストと外部接続。
  • デスクトップアプリの展開:MSI、グループポリシー、Intune、macOSプロファイル、Linuxポリシーファイル。

サーバーではなくコミュニティを運営する(チャンネル、ロール、モデレーション)場合は、コミュニティの運営を参照してください。インテグレーションを構築する場合は、Antimatterでの構築を参照してください。

最初の1時間

  1. インストールし、すぐに管理者アカウントを作成します。
  2. サーバーを独自のドメインでHTTPSの背後に配置します。
  3. SMTPを設定し、テストメールを送信します。
  4. 通話用のポートを開きます。企業向けには、新しいコミュニティの種類をワークプレイスに設定し、チャンネルで通話を使用できるようにします。
  5. 誰がサインアップできるかを決め、MFAを有効にします。
  6. セキュリティの外部接続を確認します。
  7. 毎日バックアップを設定します。AIモデル接続を追加する前に、AI暗号化キーを設定してください。

ヘルプの取得

質問はコミュニティディスカッションで、バグ報告はコミュニティリポジトリで行ってください。セキュリティ上の問題は、セキュリティポリシーに従って非公開で報告してください。