Create optimized Docker containers with multi-stage builds, security best practices, and minimal image sizes. Use when containerizing applications, creating Dockerfiles, optimizing container images, or setting up Docker Compose services.
Build production-ready Docker containers following best practices for security, performance, and maintainability.
Minimal working example:
# Multi-stage build for Node.js application
# Stage 1: Build
FROM node:18-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
RUN npm run build
# Stage 2: Production
FROM node:18-alpine
WORKDIR /app
# Copy only production dependencies and built files
COPY --from=builder /app/node_modules ./node_modules
COPY --from=builder /app/dist ./dist
COPY package*.json ./
# Security: Run as non-root user
RUN addgroup -g 1001 -S nodejs && adduser -S nodejs -u 1001
USER nodejs
EXPOSE 3000
CMD ["node", "dist/index.js"]
Detailed implementations in the references/ directory:
| Guide | Contents | |---|---| | Multi-Stage Builds | Multi-Stage Builds | | Optimization Techniques | Optimization Techniques | | Security Best Practices | Security Best Practices, Environment Configuration | | Docker Compose for Multi-Container | Docker Compose for Multi-Container | | .dockerignore File | .dockerignore File | | Python | Python (Django/Flask), Java (Spring Boot), Go |
Copy a source-pinned command for your client. You run it yourself.
Destination: .claude/skills/docker-containerization · pinned to the source commit
git clone https://github.com/aj-geddes/useful-ai-prompts.git
cd useful-ai-prompts
git checkout 3f5182cfd739fc113f4af5244a1cf342ad7f7911
mkdir -p ".claude/skills/docker-containerization"
cp -r "skills/docker-containerization" ".claude/skills/docker-containerization"Review the source before running. This copies files into your project; it is not a one-click install and does not verify runtime safety.
Scanner static-checks@0.1.0 · commit 3f5182cfd739. Static checks cannot prove runtime safety – review the source and the exact diff before installing. How checks work.
No static rules matched. This is not a safety guarantee.