一键导入
build-and-deploy
Create efficient Dockerfiles, streamline container orchestration, and optimize CI/CD pipelines to dramatically reduce build times and costs.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Create efficient Dockerfiles, streamline container orchestration, and optimize CI/CD pipelines to dramatically reduce build times and costs.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
小模型专用输出规范模板。自动注入,无需手动加载。 约束工具使用范围和输出格式,提高小模型准确率。 # 小模型专用参数 max_context_tokens: 800 injection_mode: system_prompt priority: high
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.
Build AI chat interfaces using ai-elements components — conversations, messages, tool displays, prompt inputs, and more. Use when the user wants to build a chatbot, AI assistant UI, or any AI-powered chat interface.
Autonomous iteration loop: modify, verify, keep/discard against any metric
Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.
Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.
| title | Optimize Docker Workflows and Cut Build Times by 70% |
| slug | manage-docker-containers |
| description | Create efficient Dockerfiles, streamline container orchestration, and optimize CI/CD pipelines to dramatically reduce build times and costs. |
| skills | ["docker-helper","cicd-pipeline"] |
| category | devops |
| tags | ["docker","containers","optimization","build-time","cicd"] |
Every morning at Raj's 42-person e-commerce startup, the development team waits. Docker builds take 23 minutes for the Node.js app, 31 minutes for the Python analytics service, and 18 minutes for the Go API gateway. The monolithic images are 2.1GB, 1.8GB, and 967MB respectively -- bloated with build tools, unused dependencies, and poor layer caching.
CI/CD is a nightmare. 47 builds daily across 6 services. Each failed build wastes the full build time plus developer context-switching. Monthly Docker Hub costs: $340 for bandwidth overages from massive image pulls. AWS ECS deployments take 8-12 minutes just downloading images. The math is devastating: 23 engineers multiplied by 2.3 context switches daily multiplied by 15 minutes equals 79 lost engineering hours weekly.
Local development is broken too. docker-helper up takes 11 minutes on fresh checkout. New team members spend their first day watching progress bars. The development database fails to start due to port conflicts, volume mount issues, or race conditions between services. Six different engineers have their own "docker fixes" in local setup scripts.
Using the docker-helper, docker-optimizer, and cicd-pipeline skills, the agent audits the current Docker setup, implements multi-stage builds with intelligent caching, fixes the orchestration, and optimizes the entire CI/CD pipeline -- tackling image size, build time, and developer experience all at once.
Analyze all our Docker setups across 6 services. Identify bottlenecks in build time, image size, and deployment efficiency.
The audit reveals that 89% of image content is unnecessary in production. Every service has the same problems: single-stage builds that ship dev dependencies and build tools, no layer caching strategy so every build reinstalls everything, and oversized base images.
| Service | Current Size | Target | Build Time | Biggest Issue |
|---|---|---|---|---|
| Node.js Frontend | 2.1 GB | <400 MB | 23 min | node:18 full OS, dev deps included, npm install every build |
| Python Analytics | 1.8 GB | <300 MB | 31 min | Pandas/NumPy built from source, compilation tools in final image |
| Go API Gateway | 967 MB | <50 MB | 18 min | Full Go toolchain in final image, only the binary is needed |
Implement optimized multi-stage Dockerfiles with intelligent layer caching and minimal production images.
Node.js Frontend -- from 2.1 GB to 387 MB (82% reduction), build time 23 min to 6:47:
# Build stage
FROM node:18-slim AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production && npm cache clean --force
COPY . .
RUN npm run build
# Production stage — just nginx serving static files
FROM nginx:alpine
COPY --from=builder /app/dist /usr/share/nginx/html
COPY nginx.conf /etc/nginx/nginx.conf
EXPOSE 80
Python Analytics -- from 1.8 GB to 284 MB (84% reduction), build time 31 min to 4:12:
# Dependencies stage — compile wheels once, copy to clean image
FROM python:3.11-slim AS deps
RUN pip install --user pandas numpy scikit-learn
# Production stage — no compilers, no build tools
FROM python:3.11-slim
COPY --from=deps /root/.local /root/.local
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY src/ ./src/
Go API Gateway -- from 967 MB to 12.3 MB (99% reduction), build time 18 min to 2:31:
# Build stage
FROM golang:1.21-alpine AS builder
COPY go.* ./
RUN go mod download
COPY . .
RUN CGO_ENABLED=0 go build -ldflags="-w -s" -o api
# Production stage — scratch means nothing but the binary
FROM scratch
COPY --from=builder /app/api /api
EXPOSE 8080
ENTRYPOINT ["/api"]
The Go image deserves special attention: scratch means literally nothing in the image except the compiled binary. No shell, no OS, no attack surface. The -ldflags="-w -s" strips debug information, shaving off another 30% from the binary size.
Create production-ready docker-helper configuration with health checks, proper networking, and development optimizations.
The root cause of "it works on my machine" is almost always race conditions during startup. Services start in parallel, the API tries to connect to Postgres before it's ready, and everything falls over.
version: '3.8'
services:
frontend:
build: ./frontend
ports: ["3000:80"]
depends_on:
api: { condition: service_healthy }
restart: unless-stopped
api:
build: ./api
ports: ["8080:8080"]
environment:
DATABASE_URL: postgres://user:pass@db:5432/app
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
interval: 10s
timeout: 5s
retries: 3
depends_on:
db: { condition: service_healthy }
db:
image: postgres:15-alpine
environment:
POSTGRES_DB: app
POSTGRES_USER: user
POSTGRES_PASSWORD: pass
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U user -d app"]
interval: 5s
timeout: 3s
retries: 5
The key change is condition: service_healthy instead of just depends_on. The API won't start until Postgres reports healthy via pg_isready. The frontend won't start until the API's health endpoint responds. Named volumes persist database data between restarts. Restart policies handle crashes without manual intervention.
Local development startup time: 11 minutes down to 1:43.
Implement Docker layer caching, parallel builds, and optimized deployment strategies in our CI/CD pipeline.
The pipeline builds all services in parallel using a GitHub Actions matrix strategy, with GitHub Actions cache for Docker layers:
name: Build and Deploy
on: [push]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
service: [frontend, api, analytics]
steps:
- uses: actions/checkout@v4
- uses: docker/setup-buildx-action@v3
- uses: docker/build-push-action@v5
with:
context: ./${{ matrix.service }}
cache-from: type=gha
cache-to: type=gha,mode=max
platforms: linux/amd64,linux/arm64
push: true
tags: registry/${{ matrix.service }}:${{ github.sha }}
Three changes make the biggest difference: parallel builds cut the total pipeline from 47 minutes to 12 minutes, type=gha cache avoids reinstalling dependencies when only source code changes, and monorepo path filtering means only changed services rebuild at all.
Deployment is just as dramatic. Image pulls are 89% faster because the images are 89% smaller. Container startup is 73% faster. Monthly Docker Hub costs drop from $340 to $67. AWS bandwidth costs drop from $234 to $41.
Create development scripts and documentation for consistent Docker workflows across the team.
A single Makefile replaces the six different "docker fixes" scripts:
| Command | What It Does | Time |
|---|---|---|
make dev-start | Start all services with health checks | 1:43 |
make dev-build | Rebuild only changed services | varies |
make dev-test | Run tests in containers | varies |
make dev-logs | Tail aggregated logs from all services | instant |
make dev-shell | Shell into any service container | instant |
make dev-reset | Clean slate when things go wrong | 0:30 |
New developer setup time drops from 47 minutes to 8 minutes. Docker-related support questions drop from 23 per week to 3. Failed builds caused by Docker issues fall from 34% to 4%.
The DevOps engineer at a 50-person SaaS company was spending 15 hours weekly troubleshooting Docker issues. Builds took forever, images were massive, and deployments failed randomly. The team was considering abandoning containers entirely.
Monday, the docker-optimizer audit uncovered the waste: 3.2 GB images for apps that needed 200 MB, build dependencies shipped to production, zero layer caching, dependencies recompiled from scratch every build. Tuesday, multi-stage builds went in for all 8 services. Frontend image: 3.2 GB to 180 MB. Backend API: 2.1 GB to 95 MB. ML service: 4.7 GB to 340 MB. Total registry storage dropped 91%. Wednesday, docker-helper got proper health checks and service dependencies, and the CI/CD pipeline got parallel builds. Full pipeline time: 52 minutes to 11 minutes.
One month later: feature deployment frequency up 40% from faster feedback loops, AWS costs down $1,100/month, and zero developer hours lost to Docker issues. The team that almost abandoned containers now considers them a competitive advantage.