> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/reference/ja/inference/inference-cli/server.md).

# Inference Server を制御

inference server コマンドでローカルの Roboflow Inference Server を起動、設定、確認、停止します。

この `inference server` コマンドは、Inference を公開する HTTP サーバーの周りに制御レイヤーを提供します。

{% hint style="success" %}
コマンドの詳細を確認するには、次を実行します:

```bash
inference server --help
```

各サブコマンドにもヘルプガイドがあります:

```bash
inference server start --help
```

{% endhint %}

## `inference server start`

ローカルの Inference Server を起動します。必要に応じてポート番号を指定できます（既定値は 9001）。また、そのポートで既にコンテナが稼働していない場合にのみ Docker コンテナを起動します。

Google Cloud または Amazon Cloud の仮想マシン上でサーバーを実行したい場合は、次を参照してください: [クラウドにデプロイ](/reference/ja/inference/inference-cli/cloud.md).

始める前に、マシンに Docker がインストールされていることを確認してください。Docker はコンテナ化された環境を提供し、ホストシステムに関係なく Inference Server を一貫して分離された状態で実行できるようにします。まだ Docker をインストールしていない場合は、次から入手できます: [Docker の公式ウェブサイト](https://www.docker.com/get-started).

CLI は実行中のデバイスを自動検出し、適切な Docker イメージを取得します。

```bash
inference server start --port 9001 [-e {optional_path_to_file_with_env_variables}]
```

パラメーター `--env-file` （または `-e`）は、次へのオプションのパスです: `.env` 内部パラメーターの値を調整する必要があるときに Inference Server に読み込まれるファイルです。コマンドパラメーターとして明示的に渡された値は、より重要なものと見なされ、 `.env` 同じターゲット変数名のファイルで定義された値を上書きします。

### ネットワークアクセス

CLI は既定でポート 9001 を `127.0.0.1` に公開するため、同じマシン上のプロセスからしかアクセスできません。NVIDIA Jetson イメージは例外で、 `0.0.0.0`、Jetson は通常、別のマシンから操作されるためです。明示的に選択するには、 `--bind-address` （または `-b`）を使用します:

```bash
# ネットワーク上の他のマシンから到達可能 - 先に保護してください
inference server start --bind-address 0.0.0.0 --env-file inference.env

# このマシンからのみ到達可能（Jetson を除くすべてでの既定）
inference server start --bind-address 127.0.0.1
```

ループバック以外のアドレスでは露出に関する警告が表示されます。これを使用する前に、認証とファイアウォールアクセスを設定してください。次を参照してください: [サーバーのセキュリティ](https://docs.roboflow.com/deployment/self-hosted/inference-server/configuration/security) 認証設定については [移行範囲](https://docs.roboflow.com/deployment/self-hosted/inference-server/configuration/security-migration#release-status) を参照してください。

{% hint style="warning" %}
Inference Server は既定では認証を必要とせず、Workflows の Custom Python ブロックを実行します。これは、そのポートに到達できる人にとってはリモートコード実行に相当します。次をお読みください: [セルフホストサーバーの保護](https://docs.roboflow.com/deployment/self-hosted/inference-server/configuration/security) 次以外にバインドする前に `127.0.0.1`.
{% endhint %}

このフラグは、開発モードのポート 9002 を含む Docker のホスト側ポートマッピングを制御します。変更しません `HOST=0.0.0.0` コンテナ内の。

### ボリュームマウント

次の `--volume` （または `-v`）フラグを使用して、ホストディレクトリをコンテナにマウントします。これは、Workflows によって書き込まれるファイルを永続化するのに便利です（たとえば、 `local_file_sink` ブロック経由で）ローカルマシンに保存できます。

```bash
inference server start --volume /host/path:/container/path
```

フラグを繰り返すことで、複数のボリュームをマウントできます:

```bash
inference server start --volume /host/data:/data --volume /host/models:/models:ro
```

オプションの `:ro` 接尾辞を付けると、ボリュームは読み取り専用としてマウントされます。省略した場合は、読み書き可能としてマウントされます。

### 開発モード

次の `--dev` フラグを使用して、Inference Server を開発モードで起動します。開発モードでは、Inference Server に組み込みのノートブック環境が有効になり、テストと開発を簡単に行えます。

```bash
inference server start --dev
```

次にアクセスしてください `localhost:9001` をブラウザーで開くと、リソースやサンプルへのリンクがある Inference ランディングページが表示されます。ランディングページから「Jump Into an Inference Enabled Notebook」を選択すると、新しいタブで組み込みの JupyterLab 環境が開きます。サンプルノートブックと、Inference を実行するために必要なすべての依存関係があらかじめ読み込まれています。

### トンネル

次の `--tunnel` フラグを使用して、TLS 対応エンドポイントで外部リクエストに対して inference を公開するトンネル付きで Inference Server を起動します。これにより、 `0.0.0.0` にホスト公開することが強制されるため、ループバックのバインドアドレスを指定していてもトンネルは接続できます。LAN アクセスとトンネル経由のアクセスの両方を確認してください。

ランダムに生成されたアドレスは、サーバー起動時の出力に表示されます:

```
ローカル inference へのトンネルは https://somethingrandom-ip-192-168-0-1.roboflow.run で実行中です
```

## `inference server status`

ローカル Inference Server のステータスを確認します。

```bash
inference server status
```

## `inference server stop`

Inference Server を停止します。

```bash
inference server stop
```
