← 스킬 목록으로 돌아가기

docker-compose-generator

v1.0.0 approved Development ⬇ 2 2일 전
USK v3 ✅ Verified ⚡ Auto-Convert
⬇ 다운로드
설치 가이드↓
🤖 에이전트용 설치 명령 (curl / MCP / Claude Desktop)
▸ curl 한 줄 다운로드
curl -L -o docker-compose-generator.skill   "https://aiskillstore.io/v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download?platform=ClaudeCode"
▸ MCP 도구 호출 (Skill Store MCP 등록 시)
{
  "tool": "download_skill",
  "arguments": {
    "skill_id": "75a42303-f534-46b6-ac10-cbb56acf7e74",
    "platform": "ClaudeCode"
  }
}
▸ Claude Desktop / Cursor MCP 설정 (1회)
{
  "mcpServers": {
    "skill-store": {
      "url": "https://aiskillstore.io/mcp/"
    }
  }
}
📖 에이전트용 전체 API 가이드: /llms.txt  ·  MCP server card

Generate, validate, and analyze multi-service docker-compose.yml — dependency DAG, healthcheck patterns, named volumes, and compose merge

# docker # compose # devops # container # orchestration # multi-service # yaml # 도커 # 컨테이너

기본 정보

소유자 👤 Admin 카테고리 Development 등록일 2026-05-19 최종 업데이트 2026-05-19 최신 버전 1.0.0 패키지 날짜 2026-05-19 검증 상태 approved 다운로드 수 2회 체크섬 (SHA256) 1f23367a2e4fd73bb06365f4041cee2ee921630cd2360428808e3e8891275f91

⚡ AGENT INFO USK v3

Capabilities
docker_compose_generation service_dependency_graph compose_validation healthcheck_suggestion compose_merge
Permissions
✗ network
✗ filesystem
✗ subprocess
Interface
type: cli   entry_point: main.py   runtime: python3   call_pattern: stdin_stdout
Agent API
# 스킬 스키마 조회 (에이전트가 호출 방법을 파악) GET /v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/schema # 플랫폼별 자동 변환 다운로드 GET /v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download?platform=OpenClaw GET /v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download?platform=ClaudeCode GET /v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download?platform=ClaudeCodeAgentSkill GET /v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download?platform=Cursor GET /v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download?platform=GeminiCLI GET /v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download?platform=CodexCLI GET /v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download?platform=CustomAgent

설치 방법

호환 플랫폼: any

1
openclaw_skill_manager.py로 스킬을 설치합니다.
python openclaw_skill_manager.py --install docker-compose-generator
2
설치 확인
python openclaw_skill_manager.py --list-installed
3
특정 버전 설치 (선택)
python openclaw_skill_manager.py --install docker-compose-generator --version 1.0.0
1
스킬 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download
2
Claude Code commands 디렉터리에 배치합니다.
unzip docker-compose-generator.skill -d ~/.claude/commands/docker-compose-generator/
3
Claude Code에서 슬래시 커맨드로 사용합니다.
/docker-compose-generator
1
Agent Skills 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download?platform=ClaudeCodeAgentSkill
2
Claude Code skills 디렉터리에 압축을 해제합니다.
unzip docker-compose-generator-agent-skill-*.skill -d ~/.claude/skills/docker-compose-generator/
3
Claude Code를 재시작하면 세션 시작 시 자동으로 로드됩니다. 슬래시 커맨드 없이 자연어로 사용 가능합니다.
1
Cursor 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download?platform=Cursor
2
압축 해제 후 영구 위치에 저장합니다.
unzip docker-compose-generator-cursor-*.skill -d ~/.cursor/skills/docker-compose-generator/
3
.cursor/mcp.json에 MCP 서버 설정을 추가하고 Cursor를 재시작합니다.
cat ~/.cursor/skills/docker-compose-generator/cursor_mcp_config.json
1
Gemini CLI 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download?platform=GeminiCLI
2
압축 해제 후 영구 위치에 저장합니다.
unzip docker-compose-generator-geminicli-*.skill -d ~/.gemini/skills/docker-compose-generator/
3
~/.gemini/settings.json에 MCP 서버 설정을 추가하고 Gemini CLI를 재시작합니다.
cat ~/.gemini/skills/docker-compose-generator/gemini_settings_snippet.json
1
Codex CLI 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download?platform=CodexCLI
2
압축 해제 후 영구 위치에 저장합니다.
unzip docker-compose-generator-codexcli-*.skill -d ~/.codex/skills/docker-compose-generator/
3
~/.codex/config.toml에 MCP 서버 설정을 추가하고 Codex CLI를 재시작합니다.
cat ~/.codex/skills/docker-compose-generator/codex_config_snippet.toml
1
REST API로 스킬 패키지를 다운로드합니다.
GET https://aiskillstore.io/v1/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/download
2
에이전트 플랫폼의 skills 디렉터리에 배치합니다.
cp docker-compose-generator.skill ./skills/
3
설치 가이드 API로 플랫폼별 상세 정보를 조회합니다.
GET https://aiskillstore.io/v1/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/install-guide?platform=CustomAgent

보안 검증 보고서

검증 결과 APPROVED

검사 결과: ["메타데이터 경고: 권장 필드 없음: 'requirements' (SKILL.md v2 권장)", "메타데이터 경고: 권장 필드 없음: 'changelog' (SKILL.md v2 권장)"]

✅ 보안 위험 항목이 발견되지 않았습니다.

AI 검수 단계

검수 주체 gemini 위험도 🟢 낮음 검수 요약 Docker Compose 파일 생성, 검증, 분석 및 병합 기능을 제공하며, 선언된 권한을 준수하고 악성 코드가 없습니다.
판단 근거

스킬 메타데이터와 코드 파일(main.py, lib/composer.py)을 분석한 결과, 다음과 같은 판단을 내렸습니다. 1. **선언된 권한 준수:** * 메타데이터에 `network: false`, `filesystem: false`, `subprocess: false`로 명시되어 있으며, 코드에서 이들 권한을 사용하는 어떠한 흔적도 발견되지 않았습니다. `os` 모듈은 `sys.path` 설정에만 사용되었고, 파일 시스템 접근이나 외부 프로세스 실행은 없습니다. * `env_vars: []`로 선언되었으며, 코드에서 환경 변수에 접근하는 부분이 없습니다. 2. **악의적 목적의 코드 부재:** * 코드 전체를 검토한 결과, 데이터 탈취, 시스템 파괴, 난독화 등 악의적인 목적으로 사용될 수 있는 코드는 발견되지 않았습니다. * `eval()`, `exec()`, `pickle` 등 임의 코드 실행을 유발할 수 있는 함수는 사용되지 않았습니다. 3. **외부 통신 및 데이터 수집/전송 부재:** * 코드 내에서 외부 네트워크 요청을 수행하는 라이브러리(예: `requests`)나 함수 호출이 전혀 없습니다. * 사용자 입력(stdin)을 처리하고 결과(stdout)를 반환하는 순수한 로컬 연산만 수행하며, 어떠한 사용자 데이터도 무단으로 수집하거나 외부로 전송하지 않습니다. 4. **코드 품질 및 목적 일치:** * 스킬의 목적(Docker Compose YAML 생성, 검증, 분석, 병합)에 충실하게 구현되어 있습니다. * 특히 `lib/composer.py`에 포함된 커스텀 YAML 파서(`_parse_yaml_simple`)는 외부 라이브러리 의존성을 없애기 위한 것으로 보입니다. 이 파서는 Docker Compose 파일에 필요한 YAML의 '매우 작은 부분 집합'만 지원하도록 설계되어 있으며, 복잡한 YAML 태그(예: `!!python/object/apply`)를 통한 임의 코드 실행 공격 벡터를 포함하지 않는 것으로 판단됩니다. 이는 오히려 보안 측면에서 긍정적일 수 있습니다. * 정적 분석 결과 또한 'approved' 상태이며, 'red_flags_found', 'obfuscation_warnings', 'forbidden_exec_files_found' 항목이 모두 비어 있어 코드의 안전성을 뒷받침합니다. 결론적으로, 이 스킬은 선언된 보안 정책을 철저히 준수하며, 악의적인 동작이나 취약점을 포함하고 있지 않아 안전하다고 판단됩니다.

버전 히스토리

버전 USK v3 검증 상태 패키지 날짜 다운로드 변경사항
v1.0.0 approved 2026-05-19 ⬇ 2

사용 예시 (Examples) 8 개

이 스킬의 대표적인 입출력 예시입니다. 에이전트는 이 예시를 보고 스킬 호출 방법과 결과 형태를 이해할 수 있습니다.

Generate 3-service web stack

Generate compose YAML for web app with nginx, app server, and postgres

📥 입력
{
  "action": "generate",
  "project_name": "myapp",
  "services": [
    {
      "depends_on": [
        "app"
      ],
      "image": "nginx:alpine",
      "name": "nginx",
      "ports": [
        "80:80"
      ]
    },
    {
      "depends_on": [
        "db"
      ],
      "environment": {
        "DATABASE_URL": "postgres://db/myapp"
      },
      "image": "myapp:latest",
      "name": "app"
    },
    {
      "environment": {
        "POSTGRES_DB": "myapp",
        "POSTGRES_PASSWORD": "secret"
      },
      "image": "postgres:15-alpine",
      "name": "db",
      "volumes": [
        "pgdata:/var/lib/postgresql/data"
      ]
    }
  ]
}
📤 출력
{
  "action": "generate",
  "ok": true,
  "result": {
    "compose_yaml": "Generated docker-compose.yml with 3 services, named volume pgdata, bridge network myapp_net, and healthcheck suggestions embedded",
    "network_name": "myapp_net",
    "service_count": 3,
    "volume_count": 1
  }
}
Validate compose with cycle detection

Validate a compose file that has a circular dependency

📥 입력
{
  "action": "validate",
  "compose_yaml": "version: \u00273.8\u0027\nservices:\n  a:\n    image: alpine\n    depends_on: [b]\n  b:\n    image: alpine\n    depends_on: [a]\n"
}
📤 출력
{
  "action": "validate",
  "ok": false,
  "result": {
    "errors": [
      "Circular dependency detected: a -\u003e b -\u003e a"
    ],
    "valid": false,
    "warnings": []
  }
}
Generate Mermaid dependency graph

Output Mermaid diagram for a 4-service compose

📥 입력
{
  "action": "graph",
  "compose_yaml": "version: \u00273.8\u0027\nservices:\n  web:\n    image: nginx\n    depends_on: [api]\n  api:\n    image: myapi\n    depends_on: [db, cache]\n  db:\n    image: postgres:15\n  cache:\n    image: redis:7\n"
}
📤 출력
{
  "action": "graph",
  "ok": true,
  "result": {
    "edge_count": 3,
    "mermaid": "Mermaid flowchart showing web -\u003e api -\u003e db and api -\u003e cache dependency tree",
    "service_count": 4
  }
}
Auto-suggest healthchecks

Suggest healthcheck blocks for well-known images

📥 입력
{
  "action": "healthcheck",
  "compose_yaml": "version: \u00273.8\u0027\nservices:\n  db:\n    image: postgres:15\n  cache:\n    image: redis:7\n  web:\n    image: nginx:alpine\n"
}
📤 출력
{
  "action": "healthcheck",
  "ok": true,
  "result": {
    "patched_yaml": "Updated YAML string with healthcheck blocks injected",
    "suggestions": {
      "cache": "Healthcheck block for redis using redis-cli ping",
      "db": "Healthcheck block for postgres using pg_isready",
      "web": "Healthcheck block for nginx using curl localhost"
    }
  }
}
Merge base + override compose files

Merge a base compose with a production override

📥 입력
{
  "action": "merge",
  "compose_files": [
    "version: \u00273.8\u0027\nservices:\n  app:\n    image: myapp:latest\n    environment:\n      LOG_LEVEL: debug\n",
    "version: \u00273.8\u0027\nservices:\n  app:\n    environment:\n      LOG_LEVEL: info\n      SENTRY_DSN: https://example.sentry.io/123\n"
  ]
}
📤 출력
{
  "action": "merge",
  "ok": true,
  "result": {
    "conflicts_resolved": 1,
    "merge_count": 2,
    "merged_yaml": "Merged docker-compose.yml where app LOG_LEVEL=info (overridden) and SENTRY_DSN added"
  }
}
Validate clean compose

Validate a well-formed compose file

📥 입력
{
  "action": "validate",
  "compose_yaml": "version: \u00273.8\u0027\nservices:\n  web:\n    image: nginx:alpine\n    ports:\n      - \u002780:80\u0027\n"
}
📤 출력
{
  "action": "validate",
  "ok": true,
  "result": {
    "errors": [],
    "service_count": 1,
    "valid": true,
    "warnings": []
  }
}
Generate single-service compose

Minimal compose for a standalone Redis instance

📥 입력
{
  "action": "generate",
  "services": [
    {
      "image": "redis:7-alpine",
      "name": "cache",
      "ports": [
        "6379:6379"
      ]
    }
  ]
}
📤 출력
{
  "action": "generate",
  "ok": true,
  "result": {
    "compose_yaml": "Generated minimal docker-compose.yml with single Redis service and bridge network",
    "network_name": "default_net",
    "service_count": 1,
    "volume_count": 0
  }
}
Error on missing action

Returns structured error when action is omitted

📥 입력
{
  "action": "generate"
}
📤 출력
{
  "action": "generate",
  "error": {
    "code": "MISSING_FIELD",
    "message": "Field \u0027services\u0027 is required for action \u0027generate\u0027"
  },
  "ok": false
}

모든 예시는 에이전트 API로도 조회 가능: /v1/agent/skills/75a42303-f534-46b6-ac10-cbb56acf7e74/schema

리뷰 & 평점

아직 리뷰가 없습니다. 첫 번째 리뷰를 남겨보세요!

✍️ 리뷰 작성