Skip to main content

docker-expert

Expert in Docker, docker-compose, Dockerfile patterns, and container orchestration for NestJS and Next.js applications. Use this skill when users need Docker setup, containerization, or docker-compose configuration.

Datos de origen

Repositorio
shipshitdev/shipcode
Última actividad en el origen
10 de julio de 2026 a las 11:20
Idioma detectado de SKILL.md
inglés
Estrellas
7
Forks
1

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Explorador de archivos
2 archivos

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
docker-expert
description
Expert in Docker, docker-compose, Dockerfile patterns, and container orchestration for NestJS and Next.js applications. Use this skill when users need Docker setup, containerization, or docker-compose configuration.
metadata
{"version":"1.0.0","tags":"docker, containers, infrastructure"}
# Docker Expert ## When to Use - Dockerfile creation for NestJS/Next.js - docker-compose configuration - Container networking and volumes - Multi-stage builds optimization - Health checks and restart policies - MongoDB/Redis container setup ## Dockerfile Best Practices ### NestJS Multi-Stage Build ```dockerfile FROM node:20-alpine AS base WORKDIR /app FROM base AS deps COPY package*.json ./ RUN npm ci FROM base AS builder COPY --from=deps /app/node_modules ./node_modules COPY . . RUN npm run build FROM base AS runner ENV NODE_ENV=production COPY --from=builder /app/dist ./dist COPY --from=builder /app/node_modules ./node_modules EXPOSE 3001 CMD ["node", "dist/main.js"] ``` ### Next.js Dockerfile ```dockerfile FROM node:20-alpine AS base WORKDIR /app FROM base AS deps COPY package*.json ./ RUN npm ci FROM base AS builder COPY --from=deps /app/node_modules ./node_modules COPY . . RUN npm run build FROM base AS runner ENV NODE_ENV=production COPY --from=builder /app/.next ./.next COPY --from=builder /app/public ./public COPY --from=builder /app/node_modules ./node_modules COPY --from=builder /app/package.json ./package.json EXPOSE 3000 CMD ["npm", "start"] ``` ## Docker Compose Patterns ### Development Setup - Use volumes for live reload - Mount source code - Set restart: unless-stopped - Configure networks ### Production Setup - Use named volumes for persistence - Set restart policies - Configure health checks - Use secrets management ### MongoDB with Docker Compose ```yaml services: mongodb: image: mongo:7.0 container_name: mongodb restart: unless-stopped ports: - "27017:27017" environment: MONGO_INITDB_ROOT_USERNAME: ${MONGO_ROOT_USERNAME} MONGO_INITDB_ROOT_PASSWORD: ${MONGO_ROOT_PASSWORD} volumes: - mongodb_data:/data/db networks: - app-network command: mongod --auth ``` ## Health Checks ```yaml healthcheck: test: ["CMD", "curl", "-f", "http://localhost:3001/health"] interval: 30s timeout: 10s retries: 3 start_period: 40s ``` ## Best Practices - Use multi-stage builds to reduce image size - Leverage layer caching - Use .dockerignore - Set appropriate restart policies - Use health checks for containers - Mount volumes for persistent data - Use networks for service isolation
Ver en GitHub