Files
gh-poindexter12-waypoint-te…/skills/docker/SKILL.md
2025-11-30 08:47:38 +08:00

3.8 KiB

name, description
name description
docker Docker and Docker Compose reference for container deployment, networking, volumes, and orchestration. Includes Proxmox hosting and LXC comparison patterns. Use when working with docker-compose.yaml, Dockerfiles, troubleshooting containers, or planning container architecture. Triggers: docker, compose, container, dockerfile, volume, network, service, lxc.

Docker Skill

Docker and Docker Compose reference for containerized application deployment and management.

Quick Reference

# Container operations
docker ps                         # List running containers
docker ps -a                      # List all containers
docker logs <container>           # View logs
docker logs -f <container>        # Follow logs
docker exec -it <container> sh    # Shell into container
docker inspect <container>        # Full container details

# Compose operations
docker compose up -d              # Start services (detached)
docker compose down               # Stop and remove
docker compose ps                 # List compose services
docker compose logs -f            # Follow all logs
docker compose pull               # Pull latest images
docker compose restart            # Restart services

# Troubleshooting
docker stats                      # Resource usage
docker network ls                 # List networks
docker network inspect <net>      # Network details
docker volume ls                  # List volumes
docker system df                  # Disk usage
docker system prune               # Clean up unused resources

Reference Files

Load on-demand based on task:

Topic File When to Load
Compose Structure compose.md Writing docker-compose.yaml
Networking networking.md Network modes, port mapping
Volumes volumes.md Data persistence, mounts
Dockerfile dockerfile.md Building images
Troubleshooting troubleshooting.md Common errors, diagnostics

Proxmox Integration

Topic File When to Load
Docker on Proxmox proxmox/hosting.md VM sizing, storage, GPU passthrough
LXC vs Docker proxmox/lxc-vs-docker.md Choosing container type

Compose File Quick Reference

name: myapp  # Project name (optional)

services:
  web:
    image: nginx:alpine
    ports:
      - "80:80"
    volumes:
      - ./html:/usr/share/nginx/html:ro
    networks:
      - frontend
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost"]
      interval: 30s
      timeout: 10s
      retries: 3

networks:
  frontend:
    driver: bridge

volumes:
  data:

Validation Checklist

Before deploying containers:

  • Services defined with specific image tags (not :latest)
  • Port mappings without conflicts
  • Volumes for persistent data
  • Networks configured appropriately
  • Resource limits set (memory, CPU)
  • Health checks for critical services
  • Restart policy appropriate
  • Secrets not in images or compose file
  • .env file for environment variables

Network Mode Quick Decision

Mode Use Case Isolation
bridge Default, most services Container isolated
host Performance, network tools No isolation
macvlan Direct LAN access Own MAC/IP
ipvlan Like macvlan, shared MAC Own IP
none No networking Full isolation

Volume Type Quick Decision

Type Use Case Portability
Named volume Database, app data Best
Bind mount Config files, dev Host-dependent
tmpfs Secrets, cache Memory only