Docker Compose
Docker Composeは、TomoriBotとPostgreSQLをコンテナとしてビルドおよび実行します。これはセットアップウィザードおよび手動セットアップと並ぶ3つ目のインストール方法です。ホストにBunやPostgreSQLをインストールするよりも、すべてをDockerで実行したい場合に選択してください。セットアップウィザードは使用しません。データベース接続は自動的に設定されます。
1. 必要な .env の値
Section titled “1. 必要な .env の値”サンプルファイルから開始します。
cp .env.example .env次に、最低限以下の値を設定します。
| 変数 | 値 |
|---|---|
DISCORD_TOKEN |
Discordボットのトークン(GuildMembers、MessageContent、および GuildPresences の特権インテントを有効にしてください)。 |
CRYPTO_SECRET |
保存されたAPIキーを暗号化するために使用される32文字の暗号化キー。 |
POSTGRES_PASSWORD |
データベースのパスワード。他のすべての POSTGRES_* の値は自動設定されます。 |
セットアップウィザードとは異なり、Composeは CRYPTO_SECRET を自動生成しません。ご自身で(任意の32文字の文字列を)設定してください。オプションの調整値は .env.optional.example からコピーできます。
2. ビルドと実行
Section titled “2. ビルドと実行”docker compose build # 初回、またはコード/依存関係の変更後docker compose up # ボットとデータベース以降の起動では、コードや依存関係を変更していない限り、docker compose up だけで十分です。ボットがオンラインになったら、Discordで /config setup を実行してAIプロバイダーのキーを追加します。Discord側の操作についてはクイックスタートを参照してください。
3. オプションのサイドカー(Composeプロファイル)
Section titled “3. オプションのサイドカー(Composeプロファイル)”サイドカーはComposeプロファイルを介してオプトインされるため、必要なものだけを実行できます。
# SearXNG(プライベートWeb検索)+ Crawl4AI(ブラウザレンダリングによるフェッチ)docker compose --profile searxng --profile fetch-crawl4ai up各サイドカーの詳細については、SearXNG、Crawl4AI、およびローカルモニタリングを参照してください。
メンテナンス、更新とバックアップ
Section titled “メンテナンス、更新とバックアップ”Composeデプロイメントでのバックアップ優先の更新手順には bun run update --docker を使用します。Composeデータベースのバックアップと復元(ホストスクリプトの実行を含む)については、メンテナンスとバックアップページで説明されています。新しいバージョンをプルする前に、まずは安全な移行から始めてください。