← ClaudeAtlas

docker-workflowslisted

Reviews and hardens Dockerfiles and docker-compose files — multi-stage build conversion, base-image choice, layer caching, secret leakage, root-user containers, missing healthchecks. Use when reviewing a Dockerfile, optimizing image size or build time, writing a compose file, or auditing container security.
Goodsmileduck/claude-registry · ★ 1 · DevOps & Infrastructure · score 74
Install: claude install-skill Goodsmileduck/claude-registry
# Docker — Dockerfile and compose review For Kubernetes manifests and pod debugging, see the `kubernetes-operations` skill. For Helm charts, see `kubernetes-operators` (if shipped as an operator) or chart-specific tooling. ## When to invoke Open with the static analyzers — they're stdlib Python, fast, deterministic: ```bash SKILL=plugins/kubernetes-skills/skills/docker-workflows python3 "$SKILL/scripts/dockerfile_analyzer.py" Dockerfile python3 "$SKILL/scripts/compose_validator.py" docker-compose.yml ``` Both accept `--output json` for piping. `dockerfile_analyzer.py --security` narrows to security findings only. `compose_validator.py --strict` fails on warnings. Read the findings before suggesting changes. The analyzer surfaces ~80% of routine issues; reserve LLM judgment for the rest. ## Pre-flight: what's the image FOR? Image strategy follows the workload, not vice versa. | Workload | Base image default | Why | |---|---|---| | Compiled binary (Go, Rust) | `gcr.io/distroless/static-debian12` or `scratch` | No shell, no libc — tiny attack surface | | Compiled w/ glibc deps (CGo) | `gcr.io/distroless/base-debian12` | Has glibc + ca-certs, no shell | | Python | `python:3.X-slim` (Debian) | Alpine's musl breaks many wheels (pandas, lxml) | | Node.js | `node:X-alpine` | musl is fine for pure JS; switch to slim if native modules struggle | | Java | `eclipse-temurin:X-jre-alpine` | JRE-only, not JDK, in runtime stage | | Need a shell for prod debug | `*-slim` variant | di