-
Notifications
You must be signed in to change notification settings - Fork 1.5k
ja insight troubleshooting
このページは、よくある問題の調査手順をまとめるためのものです。現在は Docker デプロイ時の問題を扱います。今後、モデル、ボットアダプター、MCP、Skills などの章を追加できます。
以下のコマンドは LangBot/docker ディレクトリで実行する前提です。
サンドボックス、stdio MCP ホスティング、Skill の追加/編集を使う場合は、all profile で起動してください:
docker compose --profile all up -dサービス状態を確認します:
docker compose --profile all ps通常は次のサービスが表示されます:
-
langbot: WebUI とバックエンドサービス。既定で5300と2280-2285を公開します。 -
langbot_plugin_runtime: プラグインランタイム。既定で5401を公開します。 -
langbot_box: Box Runtime のコントロールプレーン。サンドボックスコンテナを作成します。
docker compose up だけを実行した場合、langbot_box は起動しません。そのため stdio MCP、Skill の追加/編集、一部のサンドボックス依存機能は利用できません。
-
docker compose upがポートバインドエラーで失敗する。 -
http://127.0.0.1:5300で WebUI を開けない。 - ログに
port is already allocatedやbind: address already in useが出る。
ポートを使用しているプロセスを確認します。Linux/macOS:
lsof -i :5300
lsof -i :5401Windows PowerShell:
Get-NetTCPConnection -LocalPort 5300,5401 | Select-Object LocalPort,OwningProcess
Get-Process -Id <PID>古い LangBot、プラグインランタイム、テストプロセスであることを確認できた場合は停止し、再起動します:
docker compose --profile all up -d停止できないプロセスの場合は、docker-compose.yaml の該当ポートマッピングを変更してください。
- UI またはログに
No sandbox backend (Docker/nsjail/E2B) is readyと表示される。 - stdio MCP サーバーが利用できない。
- Skills をインストール、アクティベート、編集できない。
-
--profile allまたは--profile boxで起動していない。 -
langbot_boxが起動していない。 - Docker Desktop または現在のユーザーが Docker にアクセスできない。
- Linux で現在のユーザーに Docker socket への権限がない。
langbot_box が起動しているか確認します:
docker compose --profile all ps
docker logs langbot_box --tail 100Docker 自体が利用できるか確認します:
docker infoLinux で必要な場合は、現在のユーザーを docker グループに追加し、再ログインします:
sudo usermod -aG docker $USER
newgrp docker
docker infoその後、コンテナを再作成します:
docker compose --profile all up -d --force-recreate- ログに
host_path is outside allowed_mount_rootsが出る。 - ログに
host_path must point to an existing directory on the hostが出る。 - Docker Desktop 環境で Box root が
/run/desktop/...に解決され、拒否される。 - stdio MCP または Skill のサンドボックスコンテナを作成できない。
langbot_box はホスト Docker socket 経由でサンドボックスコンテナを作成します。サンドボックスコンテナから見えるのはホスト側のパスなので、Box root はホスト側とコンテナ内で同一パスである必要があり、かつ allowed_mount_roots の配下でなければなりません。
Docker がマウントでき、Box の安全チェックで許可される絶対パスを LangBot/docker/.env に設定します:
LANGBOT_BOX_ROOT=/var/lib/langbot/boxWindows Docker Desktop では、Docker VM から見えるパスを使用します。例:
LANGBOT_BOX_ROOT=/host_mnt/c/Users/<user>/code/projects/langbot/LangBot/docker/data/boxディレクトリが存在することを確認し、コンテナを再作成します:
docker compose --profile all up -d --force-recreate以前に docker/data/config.yaml を手動で変更している場合は、同じ root を指しているか確認してください:
box:
local:
host_root: /host_mnt/c/Users/<user>/code/projects/langbot/LangBot/docker/data/box
allowed_mount_roots:
- /host_mnt/c/Users/<user>/code/projects/langbot/LangBot/docker/data/box- MCP の状態が
connectingのまま、またはerrorになる。 -
docker logs langbot_boxにCannot forkが出る。 - 多数の stdio MCP をインストールしたあと、以前は動いていた MCP も起動に失敗する。
stdio MCP は Box サンドボックス内で実行されます。既定の Box profile は PID 制限が比較的小さいため、npx や uvx ベースの MCP を同時に多く起動するとプロセス数の上限に達することがあります。
docker/data/config.yaml で、より大きな組み込み Box profile を使います:
box:
local:
profile: network_extended次に LangBot と Box を停止し、古い共有サンドボックスを削除して、コンテナを再作成します。
Linux/macOS:
docker compose --profile all stop langbot langbot_box
docker rm -f $(docker ps -aq --filter "name=langbot-box-mcp-shared")
docker compose --profile all up -d --force-recreateWindows PowerShell:
docker compose --profile all stop langbot langbot_box
docker ps -a --filter "name=langbot-box-mcp-shared" --format "{{.Names}}" | ForEach-Object { docker rm -f $_ }
docker compose --profile all up -d --force-recreateMCP のコールドスタート完了後、MCP 管理ページで対象サーバーが connected になり、ツール数が 0 ではないことを確認します。
- MCP サーバーは一覧にあるが、状態が
errorまたは長時間connectingのまま。 - ツール数が
0。 - リモート MCP のログに
401 Unauthorized、接続タイムアウト、ハンドシェイク失敗が出る。
- リモート MCP に API Key または OAuth 認証が必要だが、設定されていない。
- MCP パッケージが
npxまたはuvxで初回起動中で、依存関係のダウンロードに時間がかかっている。 - 現在の Docker ネットワークから MCP サービスまたはパッケージレジストリに到達できない。
- stdio MCP のサンドボックスリソースが不足している。
LangBot Space では、認証情報が不要な MCP を優先するか、必要な認証情報を正しく設定してください。認証が必要な MCP では、インストール時に環境変数、ヘッダー、URL パラメーターを入力します。
実行時ログを確認します:
docker logs langbot --tail 200
docker logs langbot_box --tail 200現在の環境で接続できないサーバーは、MCP 管理ページで無効化または削除し、以後の確認結果を混乱させないようにします。
-
docker compose psで古いイメージが表示される。 - イメージのレジストリやタグを変更しても、再起動後に反映されない。
-
langbot、langbot_plugin_runtime、langbot_boxが異なるイメージタグを使用している。
3 つの LangBot サービスのイメージタグを一致させてから、pull と再作成を行います:
docker pull rockchin/langbot:latest
docker compose --profile all up -d --force-recreate既定以外のタグを意図的に使う場合は、docker-compose.yaml の langbot、langbot_plugin_runtime、langbot_box の 3 箇所をすべて同じタグに変更してください。
修正後は、次の確認を行うことを推奨します:
docker compose --profile all ps
docker inspect langbot langbot_plugin_runtime langbot_box --format '{{.Name}} {{.Config.Image}} {{.State.Status}}'WebUI を確認します:
curl -I http://127.0.0.1:5300/UI でも以下を確認します:
- ログインできる。
- Box / サンドボックス機能が利用できる。
- 対象 MCP サーバーが
connectedになっている。 - stdio MCP のツール数が想定どおり表示される。
Automatically synchronized from langbot-app/langbot-wiki.
简体中文
指南
开发者
- 插件开发
- 插件 SDK API
- 核心开发
API 参考
- Service API
English
Guides
Developers
-
Plugin Development
- Plugin Development Tutorial
- Completing Plugin Configuration Information
- Plugin Directory Structure
- Component Development
- Code Style Guide
- Migration Guide
- Publish Plugin
- Plugin SDK API
- Core Development
API Reference
- Service API