> For the complete documentation index, see [llms.txt](https://docs.digitalhumans.jp/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.digitalhumans.jp/dev/miniprem/multiple-rennys.md).

# マルチプルRenny のセットアップ

{% hint style="info" %}
本ページの内容はデジタルヒューマン株式会社の正式サポート対象外です。参考情報としてご利用ください。
{% endhint %}

## このスクリプトの役割

`setup_multiple_rennys.sh` は、複数の Renny コンテナを Docker 上で並列に動作させるための構成を自動で行います。主な機能は次のとおりです。

* **ポートの自動割り当て**（インスタンス数に応じて 8080〜8111 以降を使用）
* **インスタンスごとの環境ファイル**（renny-second.env、renny-third.env など）
* **サービス定義**を docker-compose.yml に自動追加
* **ヘルスチェック**ですべてのコンテナが稼働していることを確認
* **冪等な操作** - 何度実行しても安全です

## クイックスタート

### 対話モード

```bash
cd /path/to/miniprem-2025
./docker/scripts/setup_multiple_rennys.sh
# インスタンス数を対話的に入力
```

### 直接指定モード

```bash
./docker/scripts/setup_multiple_rennys.sh -n 4
# 4 つの Renny インスタンスをすぐにセットアップ
```

## 実行前の確認事項

以下を満たしていることを確認してください。

1. ミニプレム（MiniPrem）のインストールが完了していること: `./docker/scripts/install_miniprem.sh`
2. Docker デーモンが稼働していること
3. 十分な GPU VRAM があること（1 インスタンスあたり最低 2〜3 GB）

## ポート割り当て

スクリプトはインスタンス番号に応じて自動的にポートを割り当てます。

| インスタンス | ヘルスポート | メトリクスポート | コンテナ名          |
| ------ | ------ | -------- | -------------- |
| 1      | 8081   | 8080     | `renny`        |
| 2      | 8091   | 8090     | `renny-second` |
| 3      | 8101   | 8100     | `renny-third`  |
| 4      | 8111   | 8110     | `renny-fourth` |

**計算式**: `base_port + (instance_num - 1) * 10`

## セットアップ後

```bash
# ステータス確認
./miniprem.sh status

# ログ表示
./miniprem.sh logs

# ダッシュボードを開く
# ブラウザで開く: http://localhost:3001/

# すべてのサービスを停止
./miniprem.sh stop

# すべてのサービスを起動
./miniprem.sh start
```

## 作成されるもの

* **環境ファイル**: 各インスタンス用の `docker/renny-{ordinal}.env`
* **サービス定義**: docker-compose.yml に追加されます
* **バックアップファイル**: `docker/docker-compose.yml.backup.{timestamp}`

## トラブルシューティング

### 「MiniPrem installation not completed」

```bash
./docker/scripts/install_miniprem.sh
```

### 「Docker daemon is not running」

* Docker Desktop もしくはデーモンを起動してから再実行してください

### ポートの競合

```bash
# どのプロセスがポートを使用しているか確認
lsof -i :8091
# もしくは競合しているアプリケーションを停止
```

### コンテナが起動しない

```bash
# ログを確認
./miniprem.sh logs

# 特定のコンテナのログを確認
docker logs renny-second
```

## 推奨インスタンス数

* **2 インスタンス**: 基本的なフェイルオーバー構成
* **3〜4 インスタンス**: バランス型（推奨）
* **5〜10 インスタンス**: 大規模容量向け
* **最大 30 インスタンス**: システム上限

## 詳細ドキュメント

ワークフローの詳細説明、高度な設定、パフォーマンスに関する考慮事項、CI/CD 連携の例、包括的なトラブルシューティングガイドについては、[SETUP MULTIPLE RENNYS](https://docs.uneeq.io/#/miniprem/guides/SETUP_MULTIPLE_RENNYS) を参照してください。

## 実行例

### 例 1: 2 インスタンスのセットアップ

```bash
./docker/scripts/setup_multiple_rennys.sh -n 2
```

### 例 2: 対話モードでのセットアップ

```bash
./docker/scripts/setup_multiple_rennys.sh
# プロンプト: Enter number of Renny instances (2-30): 4
```

### 例 3: 2 から 5 インスタンスへスケール

```bash
# 初期セットアップ
./docker/scripts/setup_multiple_rennys.sh -n 2

# その後、5 インスタンスへ拡張
./docker/scripts/setup_multiple_rennys.sh -n 5
# スクリプトが既存の構成を整理し、新しいセットアップを作成します
```

## ファイルの配置場所

* **スクリプト**: `docker/scripts/setup_multiple_rennys.sh`
* **詳細ドキュメント**: `docker/scripts/SETUP_MULTIPLE_RENNYS.md`
* **本ファイル**: `docker/scripts/README_SETUP_MULTIPLE.md`
* **Compose ファイル**: `docker/docker-compose.yml`（変更されます）
* **環境ファイル**: `docker/renny-{ordinal}.env`（作成されます）
* **バックアップ**: `docker/docker-compose.yml.backup.*`（タイムスタンプ付き）

## サポート

問題や質問がある場合は、以下を確認してください。

1. 上記のトラブルシューティングセクションを確認
2. ログを確認: `./miniprem.sh logs`
3. 詳細ドキュメントを参照: [SETUP MULTIPLE RENNYS](https://docs.uneeq.io/#/miniprem/guides/SETUP_MULTIPLE_RENNYS)
4. ヘルプを実行: `./docker/scripts/setup_multiple_rennys.sh --help`
