From docker-specialist
Generates Dockerfile, docker-compose.yaml, .dockerignore, and .env.example for Dockerizing Node.js, Python, PHP/Laravel, Go projects. Use for new setups, migrations, or adding Docker support.
npx claudepluginhub mwguerra/claude-code-plugins --plugin docker-specialistThis skill uses the workspace's default tool permissions.
This skill creates a complete Docker environment for a project, including:
Generates optimized Dockerfiles and docker-compose.yml with multi-stage builds, security best practices, and layer caching by auto-detecting Node.js, Python, Go, Rust, Java projects.
Generates optimized multi-stage Dockerfiles and docker-compose configs for containerizing Node.js, Python, Go, Rust apps with health checks, volumes, and non-root security.
Generates optimized multi-stage Dockerfiles for Node.js, Python, Rust, Go apps with non-root users, layer caching, health checks, and .dockerignore. Use for containerizing apps or Docker Compose setup.
Share bugs, ideas, or general feedback.
This skill creates a complete Docker environment for a project, including:
Use this skill when:
Analyze the project to determine:
Read relevant documentation:
02-dockerfile.md for Dockerfile patterns03-compose-fundamentals.md for compose structure05-databases.md if database needed10-architecture.md for folder structure# Multi-stage build pattern
FROM base AS builder
# Build steps
FROM base AS production
# Production setup
Key elements:
services:
app:
build: .
# Configuration
db:
image: postgres:16
# Configuration
volumes:
# Named volumes
networks:
# Network configuration
Key elements:
node_modules/
.git/
.env
*.log
# Application
NODE_ENV=development
PORT=3000
# Database
DB_HOST=db
DB_USER=appuser
DB_PASSWORD=
Include:
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
USER node
EXPOSE 3000
CMD ["node", "src/index.js"]
FROM python:3.12-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
USER nobody
EXPOSE 8000
CMD ["python", "app.py"]
FROM php:8.3-fpm-alpine
WORKDIR /var/www/html
RUN apk add --no-cache postgresql-dev && \
docker-php-ext-install pdo pdo_pgsql
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
COPY . .
RUN composer install --no-dev --optimize-autoloader
EXPOSE 9000
CMD ["php-fpm"]
FROM golang:1.22-alpine AS builder
WORKDIR /app
COPY go.* ./
RUN go mod download
COPY . .
RUN CGO_ENABLED=0 go build -o main .
FROM alpine:latest
COPY --from=builder /app/main .
EXPOSE 8080
CMD ["./main"]
Generated files:
Dockerfiledocker-compose.yaml (or compose.yaml).dockerignore.env.exampledocker/ folder for additional configs (if needed)