Claude-skill-registry docker-compose-basics
Use when defining and running multi-container Docker applications with Docker Compose YAML configuration.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/docker-compose-basics" ~/.claude/skills/majiayu000-claude-skill-registry-docker-compose-basics && rm -rf "$T"
manifest:
skills/data/docker-compose-basics/SKILL.mdsource content
Docker Compose Basics
Docker Compose for defining and running multi-container applications.
Basic Structure
version: '3.8' services: web: image: nginx:latest ports: - "80:80" volumes: - ./html:/usr/share/nginx/html environment: - NGINX_HOST=localhost depends_on: - api api: build: ./api ports: - "3000:3000" environment: DATABASE_URL: postgres://db:5432/myapp depends_on: - db db: image: postgres:15 volumes: - pgdata:/var/lib/postgresql/data environment: POSTGRES_PASSWORD: secret POSTGRES_DB: myapp volumes: pgdata:
Common Commands
# Start services docker compose up # Start in background docker compose up -d # Stop services docker compose down # View logs docker compose logs -f # Rebuild docker compose build # Execute command docker compose exec web sh # Scale service docker compose up -d --scale api=3
Best Practices
Environment Variables
services: api: environment: - NODE_ENV=${NODE_ENV:-development} - API_KEY=${API_KEY}
Health Checks
services: web: healthcheck: test: ["CMD", "curl", "-f", "http://localhost"] interval: 30s timeout: 10s retries: 3
Resource Limits
services: api: deploy: resources: limits: cpus: '0.5' memory: 512M