What problem does it solve? Writing production-ready Dockerfiles by hand is error-prone: developers often ship oversized images, run containers as root, leak secrets into build contexts, or skip health checks. This Skill generates hardened, optimized Dockerfiles and .dockerignore files through a deterministic workflow with built-in validation and iterative error fixing. ## Core Features & Use Cases - Multi-Stage Build Generation: Produces language-specific templates for Node.js, Python, Go, and Java that separate build and runtime stages, reducing image size by 50-85%. - Security Hardening: Enforces non-root users, pinned version tags, minimal base images (Alpine, distroless), and secret-free builds. - Validate-Iterate Loop: Integrates with dockerfile-validator (or hadolint/checkov fallbacks) to fix errors across up to 3 iterations, with an auditable iteration log and intentional-deviation report. - Use Case: You have a FastAPI service to deploy. Ask for a production Dockerfile and receive a multi-stage build with a non-root user, health check, .dockerignore, validation report, and optimization metrics. ## Quick Start Generate a production-ready multi-stage Dockerfile and .dockerignore for my Node.js 20 Express app that listens on port 3000.