Docker Compose
Docker Composeは、TomoriBotとPostgreSQLをコンテナとしてビルドおよび実行します。 これはセットアップウィザードおよび手動セットアップと並ぶ3つ目のインストール方法です。 ホストにBunやPostgreSQLをインストールするよりも、すべてをDockerで実行したい場合に選択してください。 セットアップウィザードは使用しません。データベース接続は自動的に設定されます。
1. コードを取得する
Section titled “1. コードを取得する”git clone https://github.com/Bredrumb/TomoriBot.gitcd TomoriBot2. 必要な .env の値
Section titled “2. 必要な .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 からコピーできます。
3. ビルドと実行
Section titled “3. ビルドと実行”docker compose build # 初回、またはコード/依存関係の変更後docker compose up # ボットとデータベース以降の起動では、コードや依存関係を変更していない限り、docker compose up だけで十分です。
ボットがオンラインになったら、Discordで /setup を実行してAIプロバイダーのキーを追加します。
Discord側の操作についてはクイックスタートを参照してください。
4. オプションのサイドカー(Composeプロファイル)
Section titled “4. オプションのサイドカー(Composeプロファイル)”サイドカーはComposeプロファイルを介してオプトインされるため、必要なものだけを実行できます。
# SearXNG(プライベートWeb検索)+ Crawl4AI(ブラウザレンダリングによるフェッチ)docker compose --profile searxng --profile fetch-crawl4ai up各サイドカーの詳細については、SearXNG、 Crawl4AI、 およびローカルモニタリングを参照してください。
メンテナンス、更新とバックアップ
Section titled “メンテナンス、更新とバックアップ”Composeデプロイメントでのバックアップ優先の更新手順には bun run update --docker を使用します。
Composeデータベースのバックアップと復元(ホストスクリプトの実行を含む)については、
メンテナンスとバックアップページで説明されています。
新しいバージョンをプルする前に、まずは安全な移行から始めてください。