From docker-specialist
Generates Docker Compose configurations for multi-container apps with services, networks, volumes, health checks, dependencies, and environment setup. Useful for dev/prod orchestration.
How this skill is triggered — by the user, by Claude, or both
Slash command
/docker-specialist:composeThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill generates Docker Compose configurations for multi-container applications. It creates properly structured compose files with:
This skill generates Docker Compose configurations for multi-container applications. It creates properly structured compose files with:
Use this skill when:
Gather information about:
Read relevant documentation:
03-compose-fundamentals.md for structure04-networking.md for networks05-databases.md for database services06-services.md for dependencies08-volumes.md for persistenceCreate compose file following best practices:
# Modern compose (no version field)
services:
app:
build:
context: .
dockerfile: Dockerfile
restart: unless-stopped
ports:
- "3000:3000"
environment:
- NODE_ENV=production
depends_on:
db:
condition: service_healthy
networks:
- frontend
- backend
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/health"]
interval: 30s
timeout: 10s
retries: 3
db:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_USER: ${DB_USER}
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_DB: ${DB_NAME}
volumes:
- postgres_data:/var/lib/postgresql/data
networks:
- backend
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${DB_USER}"]
interval: 10s
timeout: 5s
retries: 5
volumes:
postgres_data:
networks:
frontend:
backend:
internal: true
services:
web:
build: .
ports:
- "80:80"
depends_on:
- api
services:
api:
build: ./api
expose:
- "3000"
environment:
- DATABASE_URL=postgresql://user:pass@db:5432/app
depends_on:
db:
condition: service_healthy
services:
db:
image: postgres:16-alpine
volumes:
- db_data:/var/lib/postgresql/data
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
healthcheck:
test: ["CMD-SHELL", "pg_isready"]
interval: 10s
retries: 5
services:
redis:
image: redis:7-alpine
command: redis-server --appendonly yes
volumes:
- redis_data:/data
services:
worker:
build: .
command: npm run worker
depends_on:
- db
- redis
networks:
backend:
internal: true # No external access
networks:
proxy:
external: true
name: traefik_proxy
volumes:
postgres_data:
volumes:
- ./src:/app/src
volumes:
- /app/node_modules
environment:
- NODE_ENV=production
env_file:
- .env
environment:
- DB_HOST=${DB_HOST:-localhost}
Generated compose file includes:
npx claudepluginhub mwguerra/claude-code-plugins --plugin docker-specialistGenerates docker-compose.yml files for multi-container apps with services, networks, volumes, health checks, resource limits, and environment overrides for dev/prod.
Defines and runs multi-container Docker applications with Docker Compose YAML, covering services, volumes, commands, environment variables, health checks, and resource limits.
Configures Docker Compose stacks for multi-service apps with databases, caches, workers, health checks, and profiles. Useful for reproducible dev environments and team setups.