Docker MCP Server
🐋 Docker MCP サーバー
自然言語でDockerを管理するためのMCPサーバー!
🪩 何ができるの?
🚀 自然言語でコンテナを作成する
🔍 実行中のコンテナの調査とデバッグ
📀 Dockerボリュームで永続データを管理する
Related MCP server: Docker Container Manager MCP Server
❓ これは誰向けですか?
サーバー管理者: 公開 Web サイトの管理などのためにリモート Docker エンジンに接続します。
Tinkerers: コンテナをローカルで実行し、Docker をサポートするオープンソース アプリを試します。
AI 愛好家の皆さん、LLM の能力の限界を押し広げましょう!
デモ
自然言語を使用した WordPress の展開を示す簡単なデモ:
https://github.com/user-attachments/assets/65e35e67-bce0-4449-af7e-9f4dd773b4b3
🏎️ クイックスタート
インストール
クロードデスクトップ
MacOSの場合: ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows の場合: %APPDATA%/Claude/claude_desktop_config.json
uvがインストールされていない場合は、システムのインストール手順に従ってください: link
次に、MCP サーバー ファイルに次のコードを追加します。
"mcpServers": {
"mcp-server-docker": {
"command": "uvx",
"args": [
"mcp-server-docker"
]
}
}便宜上、サーバーは Docker コンテナ内で実行できます。
このリポジトリをクローンした後、Docker イメージをビルドします。
docker build -t mcp-server-docker .次に、MCP サーバー ファイルに次のコードを追加します。
"mcpServers": {
"mcp-server-docker": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-v",
"/var/run/docker.sock:/var/run/docker.sock",
"mcp-server-docker:latest"
]
}
}Docker ソケットをボリュームとしてマウントすることに注意してください。これにより、MCP サーバーがローカル Docker デーモンに接続して制御できるようになります。
📝 プロンプト
🎻 docker_compose
自然言語を使ってコンテナを作成します。デモは上記をご覧ください。
プロジェクト名と必要なコンテナの説明を入力し、残りの作業は LLM に任せましょう。
このプロンプトは、LLMにplan+applyループに入るよう指示します。LLMとのやり取りは、以下の手順で行われます。
LLMにどのコンテナを起動するか指示を与える
LLMは簡潔な自然言語計画を計算し、それをあなたに提示します
次のいずれかを実行します。
計画を適用する
LLMにフィードバックを提供すると、LLMが計画を再計算します
例
名前:
nginx、コンテナ: 「ポート 9000 で公開する nginx コンテナをデプロイする」名前:
wordpress、コンテナ: 「WordPress コンテナとそれをサポートする MySQL コンテナをデプロイし、Wordpress をポート 9000 で公開する」
プロジェクトの再開
このプロンプトを使用して新しいチャットを開始すると、LLM は指定されたプロジェクトnameで作成されたすべてのコンテナー、ボリューム、およびネットワークのステータスを受け取ります。
これは主に、多くのコンテナを担当していたチャットが失われた場合にクリーンアップするのに役立ちます。
📔 リソース
サーバーは、コンテナごとにいくつかのリソースを実装します。
統計: コンテナの CPU、メモリなど
ログ: コンテナからいくつかのログを tail する
🔨 ツール
コンテナ
list_containerscreate_containerrun_containerrecreate_containerstart_containerfetch_container_logsstop_containerremove_container
画像
list_imagespull_imagepush_imagebuild_imageremove_image
ネットワーク
list_networkscreate_networkremove_network
ボリューム
list_volumescreate_volumeremove_volume
🚧 免責事項
機密データ
**機密データを含むコンテナを設定しないでください。**これにはAPIキー、データベースパスワードなどが含まれます。
LLM がローカル マシン上で実行されていない限り、LLM と交換される機密データは本質的に危険にさらされます。
シークレットをコンテナに安全に渡すことに関心がある場合は、このリポジトリにユースケースを記載した問題を報告してください。
作成されたコンテナの確認
LLM が作成するコンテナを注意深く確認してください。Docker は安全なサンドボックスではないため、MCP サーバーが Docker を介してホストマシンに影響を与える可能性があります。
安全上の理由から、このMCPサーバーは--privilegedや--cap-add/--cap-dropといった機密性の高いDockerオプションをサポートしていません。これらの機能にご興味がある場合は、このリポジトリにユースケースを記載して問題を提出してください。
🛠️ 構成
このサーバーはPython Docker SDKのfrom_envメソッドを使用します。設定の詳細については、ドキュメントをご覧ください。
SSH経由でDockerに接続する
この MCP サーバーは、SSH 経由でリモート Docker デーモンに接続できます。
MCP サーバー定義でssh://ホスト URL を設定するだけです。
"mcpServers": {
"mcp-server-docker": {
"command": "uvx",
"args": [
"mcp-server-docker"
],
"env": {
"DOCKER_HOST": "ssh://myusername@myhost.example.com"
}
}
}💻 開発
開発環境を構成するには、Devbox を使用することをお勧めします。
役立つ開発コマンドについては、 devbox.jsonを参照してください。
devbox をセットアップしたら、Claude MCP 構成を設定してそれを使用できます。
"docker": {
"command": "/path/to/repo/.devbox/nix/profile/default/bin/uv",
"args": [
"--directory",
"/path/to/repo/",
"run",
"mcp-server-docker"
]
},This server cannot be deployed
Maintenance
Related MCP Connectors
An MCP server that integrates with Discord to provide AI-powered features.
- mcpOAuthcom.gibsonai
GibsonAI MCP server: manage your databases with natural language
Create, deploy, and operate MCP servers directly from your GitHub repositories.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables managing Docker containers through natural language commands, allowing users to create, list, and delete containers. It facilitates automated container orchestration and integrates with VS Code via the Cline extension.96 npmMIT
- FlicenseNot gradedqualityDmaintenanceAn MCP server that gives any LLM client the ability to list, inspect, start, stop, and monitor Docker containers on the host machine.1-
- FlicenseBqualityBmaintenanceAn MCP server that gives LLMs direct control over a local Docker daemon, enabling container, image, volume, network, and Compose stack management through natural language.234-
- FlicenseBqualityBmaintenanceMCP server for natural-language control of local Docker, covering containers, images, volumes, networks, and Compose stacks, plus security scanning and diagnostics.34-