デプロイ
3つのインストール方法から1つを選びます。データの保存場所とアップグレード方法まで確認すれば、このページの内容は完了です。
どの種類を選ぶか§
- Docker Compose — 推奨方式です。1コマンドで起動し、アップグレードも1コマンドで行えます。
- ネイティブバイナリ —— Docker を入れたくない場合
- Windows インストーラー —— Windows で自動起動のサービスとして導入したい場合
- ソースコードビルド — コードを変更する場合や、特定プラットフォーム向けにビルドする場合に使います。
わからない場合は最初のものを使ってください。
Docker Compose§
git clone --depth 1 --branch v2 \ https://github.com/tbphp/gpt-load.git cd gpt-load cp .env.example .env docker compose up -d
curl --fail http://127.0.0.1:3001/health
docker compose exec gpt-load \
sh -c 'cat /app/data/auth.key'これは最も簡単に陥る落とし穴です。コンテナ内ではHOSTが0.0.0.0、DATA_DIRが/app/dataに固定されているため、.envで変更しても反映されません。外部からの到達可否は Compose のポート公開設定で決まり、デフォルトではホストの127.0.0.1:3001にだけ公開されます。
ネイティブバイナリ§
GitHub Releases から対応するプラットフォームのビルドをダウンロードします。対象は 5 つ:Linux と macOS がそれぞれ amd64 と arm64、Windows は amd64 です。
ダウンロード後にまず検証。リリースページにはSHA256SUMSが含まれています:
# チェックサムを確認
sha256sum -c SHA256SUMS --ignore-missing
chmod +x ./gpt-load-linux-amd64
HOST=127.0.0.1 DATA_DIR=./data ./gpt-load-linux-amd64次にhttp://127.0.0.1:3001を開きます。管理キーは./data/auth.keyにあります。
Windows の gpt-load-windows-amd64.exe は フォアグラウンドで実行される ため、ウィンドウを閉じるとサービスは停止します。常駐させたい場合は、以下のインストーラーを使ってください。
Windows インストーラー§
リリースページにはもう一つ gpt-load-windows-setup.exe があります。Windows でより手軽な導入方法です。ダブルクリックして管理者権限を許可すると、次の作業を自動で行います:
- Windows サービスとして登録 —— 低権限アカウントで実行し、自動起動を設定します
- ショートカットを作成 —— デスクトップとスタートメニューの両方に管理画面へのショートカットを作成します
- サービスを起動 —— インストール後すぐに使え、追加のコマンドは不要です
初回生成される管理キーは はインストーラー画面で一度だけ表示されます。ページを閉じる前に保存してください。見逃しても %ProgramData%\GPT-Load\data\auth.key にあります。
インストール後、2 つのディレクトリを覚えておいてください:
- 設定ディレクトリ ——
%ProgramData%\GPT-Load。サービスはここから.envを読み込みます - データディレクトリ ——
%ProgramData%\GPT-Load\data。データベースと 2 つのキーはここにあります
サービスを手動で管理する場合は、プログラム付属のサブコマンドを使います:
gpt-load-windows-amd64.exe service status gpt-load-windows-amd64.exe service stop gpt-load-windows-amd64.exe service start gpt-load-windows-amd64.exe service restart
アップグレード は新しいインストーラーで上書きするだけです。更新前にサービスを正常に停止します。アンインストール はプログラムとサービスを削除しますが、データディレクトリは残します。つまり再インストール後も設定は残り、完全に消したい場合は手動削除が必要です。
ソースコードビルド§
ソースからのビルドには Go と Node が必要です。管理画面はバイナリに組み込まれるため、先にフロントエンドをビルドします:
git clone --branch v2 https://github.com/tbphp/gpt-load.git
cd gpt-load
# 管理画面を構築、生成物はバイナリに埋め込まれる
make build
./gpt-load必要な Go と Node のバージョンは、リポジトリルートのgo.modとweb/package.jsonを参照してください。
データの保存場所§
デフォルトの SQLite 構成では、すべての状態がDATA_DIRに保存されます。Compose 構成上の論理ボリューム名はgpt-load-dataですが、実際の Docker ボリューム名は Compose プロジェクト名から決まるため、同じとは限りません:
gpt-load.db— データベースです(デフォルトは SQLite)。auth.key——AUTH_KEYが明示的に設定されていない場合に自動生成されますencryption.key——ENCRYPTION_KEYが明示的に設定されていない場合に自動生成されます
暗号化キーはデータベースとセットでバックアップする必要があります。AUTH_KEYまたはENCRYPTION_KEYを明示的に設定している場合は、元の安全な保管元から別途バックアップしてください。これらはデータボリュームへ自動的には書き込まれません。詳しくはデータベースとバックアップを参照してください。
MySQL または PostgreSQL を使う場合はDATABASE_DSNを設定し、組み込み SQLite を使う場合は空のままにします。
日常運用§
# ログを見る docker compose logs -f # サービス停止 docker compose stop # 再起動 docker compose restart
アップグレードとロールバック§
GitHub を見張る必要はありません。管理画面の設定ページにあるシステム情報で現在のバージョンを確認でき、新しいバージョンが出るとリリースノートへのリンク付きで通知されます。手動での更新確認も可能です。
docker compose pull docker compose up -d
データは名前付きボリュームに残るため、アップグレードで失われません。データベーススキーマの変更は起動時に自動適用され、手動操作は不要です。
公式 Compose はv2beta更新チャネルを使用し、latestに依存しません。このタグは 2.0 Beta のリリースに合わせて移動します。バージョンを固定する場合は、具体的なバージョンタグまたはイメージダイジェストを使用してください。
データベースのマイグレーションは一方向のため、ロールバックではイメージタグを戻すだけでは不十分です。アップグレード前にサービスを停止してバックアップしてください。ロールバックする場合は、アップグレード前のデータベースと対応するキーを復元し、そのバックアップに対応する旧バージョンを起動します。
インストール後はクイックスタートで最初のGroupを作成し、本番運用前にセキュリティと本番運用のチェックリストを確認してください。