Integrations
Allows management of Docker with natural language, including composing containers, introspecting running containers, and managing Docker volumes, networks, and images.
Allows deployment of MySQL containers through natural language commands.
Allows deployment of NGINX containers through natural language commands.
🐋 Docker MCP 서버
자연어로 Docker를 관리하기 위한 MCP 서버!
🪩 무엇을 할 수 있나요?
- 🚀 자연어로 컨테이너 구성
- 🔍 실행 중인 컨테이너를 검사하고 디버깅하세요
- 📀 Docker 볼륨을 사용하여 영구 데이터 관리
❓ 누구를 위한 것인가요?
- 서버 관리자: 원격 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
설치되어 있지 않으면 시스템에 대한 설치 지침을 따르세요: 링크
그런 다음 MCP 서버 파일에 다음을 추가합니다.
지엑스피1
순전히 편의를 위해, 서버는 Docker 컨테이너에서 실행될 수 있습니다.
이 저장소를 복제한 후 Docker 이미지를 빌드합니다.
그런 다음 MCP 서버 파일에 다음을 추가합니다.
Docker 소켓을 볼륨으로 마운트한다는 점에 유의하세요. 이렇게 하면 MCP 서버가 로컬 Docker 데몬에 연결하여 제어할 수 있습니다.
📝 프롬프트
🎻 docker_compose
자연어를 사용하여 컨테이너를 구성하세요. 데모는 위를 참조하세요 .
프로젝트 이름과 원하는 컨테이너에 대한 설명을 제공하면 나머지는 LLM이 알아서 처리합니다.
이 프롬프트는 LLM에게 plan+apply
루프를 시작하도록 지시합니다. LLM과의 상호 작용은 다음 단계로 구성됩니다.
- LLM에 어떤 컨테이너를 가져올지에 대한 지침을 제공합니다.
- LLM은 간결한 자연어 계획을 계산하여 귀하에게 제시합니다.
- 다음 중 하나를 선택하세요.
- 계획을 적용하세요
- LLM 피드백을 제공하면 LLM이 계획을 다시 계산합니다.
예시
- 이름:
nginx
, 컨테이너: "포트 9000에 노출되는 nginx 컨테이너 배포" - 이름:
wordpress
, 컨테이너: "워드프레스 컨테이너와 지원하는 MySQL 컨테이너를 배포하여 워드프레스를 포트 9000에 노출"
프로젝트 재개
이 프롬프트로 새로운 채팅을 시작하면 LLM은 지정된 프로젝트 name
으로 생성된 모든 컨테이너, 볼륨 및 네트워크의 상태를 수신합니다.
이는 주로 많은 컨테이너에 대한 책임이 있는 채팅을 잃어버린 경우 정리하는 데 유용합니다.
📔 리소스
서버는 각 컨테이너에 대해 몇 가지 리소스를 구현합니다.
- 통계: 컨테이너의 CPU, 메모리 등
- 로그: 컨테이너에서 일부 로그를 가져옵니다.
🔨 도구
컨테이너
list_containers
create_container
run_container
recreate_container
start_container
fetch_container_logs
stop_container
remove_container
이미지
list_images
pull_image
push_image
build_image
remove_image
네트워크
list_networks
create_network
remove_network
볼륨
list_volumes
create_volume
remove_volume
🚧 면책 조항
민감한 데이터
민감한 데이터가 포함된 컨테이너를 구성하지 마세요. 여기에는 API 키, 데이터베이스 비밀번호 등이 포함됩니다.
LLM이 로컬 컴퓨터에서 실행되고 있지 않는 한, LLM과 교환되는 모든 민감한 데이터는 본질적으로 손상될 가능성이 있습니다.
컨테이너에 비밀을 안전하게 전달하는 데 관심이 있다면 이 저장소에 사용 사례와 함께 문제를 제출하세요.
생성된 컨테이너 검토
LLM이 생성하는 컨테이너를 주의 깊게 검토하세요. Docker는 안전한 샌드박스가 아니므로 MCP 서버가 Docker를 통해 호스트 머신에 잠재적으로 영향을 미칠 수 있습니다.
안전상의 이유로 이 MCP 서버는 --privileged
또는 --cap-add/--cap-drop
같은 민감한 Docker 옵션을 지원하지 않습니다. 이러한 기능에 관심이 있으시면 사용 사례와 함께 이 저장소에 이슈를 제출해 주세요.
🛠️ 구성
이 서버는 Python Docker SDK의 from_env
메서드를 사용합니다. 구성에 대한 자세한 내용은 설명서를 참조하세요.
💻 개발
개발 환경을 구성하려면 Devbox를 사용하는 것이 좋습니다.
유용한 개발 명령은 devbox.json
참조하세요.
Devbox를 설정한 후에는 Claude MCP 구성을 구성하여 사용할 수 있습니다.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
자연어로 Docker 컨테이너를 관리할 수 있는 MCP 서버로, 사용자가 명령을 직접 실행하지 않고도 컨테이너를 구성, 검사 및 디버깅할 수 있습니다.
- 🪩 What can it do?
- ❓ Who is this for?
- Demo
- 🏎️ Quickstart
- 📝 Prompts
- 📔 Resources
- 🔨 Tools
- 🚧 Disclaimers
- 🛠️ Configuration
- 💻 Development
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server to run commands.Last updated -2556133TypeScriptMIT License
- AsecurityAlicenseAqualityA powerful Model Context Protocol (MCP) server for Docker operations, enabling seamless container and compose stack management through Claude AI.Last updated -4160PythonMIT License
- AsecurityAlicenseAqualityA MCP server for managing and storing code snippets in various programming languages, allowing users to create, list, and delete snippets via a standardized interface.Last updated -34JavaScriptMIT License
- AsecurityFlicenseAqualityAn MCP server implementation that enables interaction with the Unstructured API, providing tools to list, create, update, and manage sources, destinations, and workflows.Last updated -3925