containerization
Skill1 starsChanged 4 days agoMITView on GitHub
Write production-grade Dockerfiles, docker-compose, and Kubernetes manifests following security and reliability best practices. Triggers: Dockerfile, docker-compose, containerize, Docker image, Kubernetes, k8s manifest, container, pod, deployment yaml, multi-stage build, docker build, image size, container security.
- Reads credentials
9 other projects use a version of this.
Adopted by
Most recently taken up by
- KMaruthi2002/universal-llm-skillstheir own version, first seen Oct 25, 2026
- kid-sid/claude-spellbooktheir own version, first seen Oct 9, 2026
- novatic-cu/nova-skillstheir own version, first seen Sep 20, 2026
- bmaltais/skillstheir own version, first seen Sep 6, 2026
- MANVENDRA-github/agentrytheir own version, first seen Jul 6, 2026
- agent-packs/registrytheir own version, first seen Jun 15, 2026
Other versions9 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 9
- kid-sid/claude-spellbook★ 190same name
- bmaltais/skills★ 2same name
- ffsshhttiikk/opencode-agents-skills★ 2same name
- KMaruthi2002/universal-llm-skills★ 1same name
- mmondora/claude-skills★ 1same name
- novatic-cu/nova-skills★ 1same name
- agent-packs/registry★ 0same name
- MANVENDRA-github/agentry★ 0same name
- ReaperOAK/ForgeOS★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository68 other files it gives its agents.
- AGENTS.mdAGENTS.md
- accessibility-designSkill
- ai-evaluationSkill
- api-designSkill
- architecture-designSkill
- architecture-documentationSkill
- brainstormingSkill
- browser-verificationSkill
- bug-investigatingSkill
- build-vs-buySkill
- cicd-pipelineSkill
- code-archaeologySkill
- code-reviewingSkill
- code-slop-cleanupSkill
- compliance-privacySkill
- configuration-strategySkill
- data-modelingSkill
- data-pipeline-designSkill
- data-qualitySkill
- dependency-impact-analysisSkill
- dependency-managementSkill
- deployment-checklistSkill
- deployment-repoSkill
- dx-auditSkill
- effort-estimationSkill
- exploratory-data-analysisSkill
- feature-planningSkill
- finops-cost-optimizationSkill
- frontend-architectureSkill
- gitops-deliverySkill
- git-workflowSkill
- incident-responseSkill
- infrastructure-as-codeSkill
- llm-app-engineeringSkill
- metrics-and-okrsSkill
- ml-experiment-trackingSkill
- ml-model-deploymentSkill
- ml-pipeline-designSkill
- mobile-architectureSkill
- mobile-releaseSkill
- notebook-to-productionSkill
- observability-designSkill
- performance-optimizationSkill
- plan-executionSkill
- prd-writingSkill
- project-documentationSkill
- project-proposalSkill
- project-reviewSkill
- refactoringSkill
- release-managementSkill
- research-methodologySkill
- resilience-engineeringSkill
- retrospectiveSkill
- rollback-strategySkill
- security-auditSkill
- skill-routerSkill
- statistical-analysisSkill
- strategic-reviewSkill
- subagent-orchestrationSkill
- tdd-workflowSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
9 rules. 0 are common, 8 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 8 edited versions we read keep these.
8
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 8
Write production-quality container configurations — Dockerfiles, compose files, and Kubernetes manifests — that are secure, efficient, and …
- Distinctive: line 14
Before writing a Dockerfile, establish:
- Distinctive: line 24
Follow these principles in order of importance:
- Very specific: line 38
Use templates/dockerfile.md as a starting point for Node.js, Python, Go, and docker-compose configurations.
- Distinctive: line 53
All services defined (app, database, cache, queue)
- Distinctive: line 64
When creating K8s deployments:
- Distinctive: line 85
KISS: Start with the simplest configuration that works.
- Distinctive: line 86
DRY: Use build args and env vars to parameterize, not duplicate Dockerfiles per environment.
- Distinctive: line 88
YAGNI: Don't add Kubernetes if Docker Compose serves your scale.
“Common” is measured: kept by at least 6 in 10 of the 8 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Containerization
Write production-quality container configurations — Dockerfiles, compose files, and Kubernetes manifests — that are secure, efficient, and reproducible.
Workflow: Dockerfile
Step 1: Understand the Application
Before writing a Dockerfile, establish:
- Runtime: Node.js, Python, Go, Java, etc. and specific version
- Build process: Does it need compilation, asset bundling, dependency installation?
- Runtime dependencies: System packages, native libraries
- Entry point: What command starts the application?
- Configuration: Environment variables, config files, secrets
Step 2: Write the Dockerfile
Follow these principles in order of importance:
1. Use multi-stage builds — Separate build dependencies from the runtime image. Build artifacts in one stage, copy only what's needed to a slim final stage.
2. Pin base image versions — Never use latest. Use specific digests or version tags: node:20.11-alpine3.19, not node:latest.
3. Minimize layers and image size — Combine related RUN commands with &&. Use Alpine or distroless base images. Remove package manager caches after install.
4. Order for cache efficiency — Place infrequently changing instructions (system deps) before frequently changing ones (application code). Copy dependency manifests before source code.
5. Run as non-root — Create a dedicated user and switch to it. Never run production containers as root.
6. Use .dockerignore — Exclude node_modules, .git, .env, test files, docs from the build context.
Use templates/dockerfile.md as a starting point for Node.js, Python, Go, and docker-compose configurations.
Step 3: Validate
- Image builds successfully
- Image size is reasonable for the application type
- Container runs as non-root user
- No secrets baked into the image (check with
docker history) - Health check is defined
- .dockerignore excludes unnecessary files
Workflow: Docker Compose (Local Development)
Design compose files that give developers a one-command local environment:
- All services defined (app, database, cache, queue)
- Volumes for hot-reload development
- Named volumes for data persistence across restarts
- Environment variables with sensible defaults via
.env.example - Health checks and dependency ordering (
depends_onwithcondition: service_healthy) - Port mappings that avoid common conflicts
See references/dockerfile-patterns.md for compose patterns.
Workflow: Kubernetes Manifests
When creating K8s deployments:
- Define resource requests and limits — Always. Without them, a single pod can starve the cluster.
- Configure health probes — Liveness (is the process alive?), readiness (can it serve traffic?), startup (for slow-starting apps).
- Use ConfigMaps and Secrets — Never hardcode configuration in manifests.
- Set pod disruption budgets — For availability during upgrades.
- Use namespaces — Isolate environments (dev, staging, prod) and teams.
- Define HPA — Horizontal pod autoscaling based on CPU/memory or custom metrics.
When to Use Helm or Kustomize
For multi-environment deployments or when using a deployment repo pattern, plain manifests become hard to manage. Choose based on your needs:
- Plain manifests: Single environment, few resources, no templating needed. Start here.
- Kustomize: Multiple environments with small differences (replicas, resource limits, image tags). Uses patches over a base — no templating language to learn.
- Helm: Complex deployments with many configurable parameters, or when you need to package charts for reuse. More powerful but more complexity.
See deployment-repo for organizing Helm charts and Kustomize overlays in a deployment repo, and gitops-delivery for using them with ArgoCD or Flux.
Principles Applied
- KISS: Start with the simplest configuration that works. Single-stage Docker build before multi-stage. Docker Compose before Kubernetes.
- DRY: Use build args and env vars to parameterize, not duplicate Dockerfiles per environment.
- Security by default: Non-root, minimal image, no secrets in layers, read-only filesystem where possible.
- YAGNI: Don't add Kubernetes if Docker Compose serves your scale. Don't add Helm charts if plain manifests suffice.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

