Inference Server はデフォルトで localhost にバインドされます
Inference Server の起動 現在、サーバーポートを公開します 127.0.0.1 すべてのネットワークインターフェースではなく。CLI で起動したサーバーは、実行されているマシン上でのみ応答します。
これにより LAN 経由のアクセスができなくなります。 異なるマシンから Inference Server にアクセスする場合 - Jetson や Raspberry Pi に接続するラップトップ、共有 GPU マシンに接続するカメラホスト、CI ランナー、別ホスト上のコンテナ、同じ Wi‑Fi 上の電話 - これらのリクエストは、 --bind-address 0.0.0.0.
# 新しいデフォルト: このマシンからのみ到達可能
Inference Server の起動
# 以前の動作: このホストにルーティングできるすべてのマシンから到達可能
inference server start --bind-address 0.0.0.0理由
セルフホストの Inference Server はデフォルトでは認証を必要とせず、Workflows のカスタム Python ブロックを実行します。これらを合わせると、ポートに到達できる誰でもホスト上で任意のコードを実行できることになります 9001。すべてのインターフェースに公開すると、信頼できない Wi‑Fi を含むローカルネットワーク上のあらゆるものにそれが渡っていました。ループバックが現在のデフォルトになったので、何も考えなくても安全な設定になります。
にバインドする前に 0.0.0.0
ポートを公開することは、それ自体の制御が必要なデプロイメントを選ぶことを意味します:
設定してください
WORKSPACES_WHITELISTED_FOR_LOCAL_DEPLOYMENT、またはサーバーの前に独自の認証を置いてください。設定してください
ALLOW_CUSTOM_PYTHON_EXECUTION_IN_WORKFLOWS=falseWorkflows に本当にカスタム Python が必要な場合を除きます。リクエストがホストを離れる場合は、サーバーまたは上流のプロキシで TLS を終端してください。
コンテナを自分で起動する場合
何も変わりませんし、変えられません: HOST インターフェースを選択します 内の コンテナ内のことで、コンテナは別のネットワーク名前空間なので、イメージはホストが公開する内容を制限できません。 docker run -p 9001:9001 は引き続きすべてのインターフェースに公開されます。新しい動作にするには、マッピングのホスト側を明示的にバインドしてください:
の下では --network host ポートマッピングがないため、次を設定します -e HOST=127.0.0.1 代わりに。Kubernetes では、次を維持してください HOST=0.0.0.0 そして、Service の種類と NetworkPolicy で公開範囲を制御してください。
この変更では他にも
Raspberry Pi やその他の CPU/GPU 対象には新しい
127.0.0.1デフォルトが適用されます。例外は Jetson イメージのみです。inference server start --tunnel引き続き次に公開されます0.0.0.0。これはトンネルが別のコンテナで実行され、ホストゲートウェイ経由でサーバーに到達するためです。CLI はこれを行うときに通知を表示します。macOS と Windows のデスクトップアプリバンドルは次にもバインドします
127.0.0.1。設定してくださいHOST=0.0.0.0以前の動作を復元するには。
最終更新
役に立ちましたか?