containerize-application — Claude Code command: Docker
A slash command that writes the Docker setup for your project: Dockerfile, .dockerignore, docker-compose and Kubernetes manifests.
npx claude-code-templates@latest --command deployment/containerize-applicationWhat containerize-application does
containerize-application walks an application through containerization in Claude. It starts by reading the project — package.json, setup.py, go.mod or pom.xml reveal the runtime, and it also looks for dependency files and port settings. From there the agent writes a multi-stage Dockerfile, picks a minimal base image and sets up layer caching.
Ten steps sit behind the command: architecture analysis, image build, .dockerignore, runtime with health checks and graceful shutdown, hardening as a non-root user, a docker-compose.yml for local development, Kubernetes manifests, metrics and logging, CI/CD integration, and a build validation pass. Its toolset is narrow — Read, Write, Edit, Bash — so it stays inside the repo.
You can name the stack yourself: --node, --python, --java, --go or --multi-stage. Leave the argument out and the agent detects the runtime from project files. One catch: the build and validation steps need Docker on the machine, so install it before running the command.
What it helps with
- write a multi-stage Dockerfile for a specific runtime
- run the app as a non-root user inside a container
- describe services and volumes in docker-compose for local work
- prepare Kubernetes manifests for deployment
- add a health check and graceful shutdown to the container
Example prompts for the agent
- /containerize-application --node
- /containerize-application --python
- /containerize-application --multi-stage
How to install containerize-application
1claude-code-templates
npx claude-code-templates@latest --command deployment/containerize-application2Manually: put the files in place
.claude/commands/containerize-application.mdCall it with /containerize-application. For all projects use ~/.claude/commands/
Manually: put the files in place
~/.codex/prompts/containerize-application.mdCall it with /prompts:containerize-application. Codex marks this format deprecated in favour of skills
Manually: put the files in place
.github/prompts/containerize-application.prompt.mdManually: put the files in place
.gemini/commands/containerize-application.tomlGemini stores commands as TOML: the prompt text goes into the prompt field
Questions about containerize-application
How do I install containerize-application in Claude?
Use the templates package: npx claude-code-templates@latest --command deployment/containerize-application. The command file then lives at .claude/commands/containerize-application.md.
What does containerize-application do?
It analyzes the project and produces a multi-stage Dockerfile, a .dockerignore, a docker-compose.yml, Kubernetes manifests and monitoring configuration.
What arguments does the command take?
--node, --python, --java, --go or --multi-stage. You can also pass the application type positionally; without an argument the agent detects the runtime from files like package.json or go.mod.
Source text
containerize-application.md · MIT
---
allowed-tools: Read, Write, Edit, Bash
argument-hint: "[application-type] | --node | --python | --java | --go | --multi-stage"
description: Containerize application with optimized Docker configuration, security, and multi-stage builds
---
# Application Containerization
Containerize application for deployment: $ARGUMENTS
## Current Application Analysis
- Application type: @package.json or @setup.py or @go.mod or @pom.xml (detect runtime)
- Existing Docker: @Dockerfile or @docker-compose.yml (if exists)
- Dependencies: !`find . -name "*requirements*.txt" -o -name "package*.json" -o -name "go.mod" | head -3`
- Port configuration: !`grep -r "PORT\|listen\|bind" src/ 2>/dev/null | head -3 || echo "Port detection needed"`
- Build tools: @Makefile or build scripts detection
## Task
Implement production-ready containerization strategy:
1. **Application Analysis and Containerization Strategy**
- Analyze application architecture and runtime requirements
- Identify application dependencies and external services
- Determine optimal base image and runtime environment
- Plan multi-stage build strategy for optimization
- Assess security requirements and compliance needs
2. **Dockerfile Creation and Optimization**
- Create comprehensive Dockerfile with multi-stage builds
- Select minimal base images (Alpine, distroless, or slim variants)
- Configure proper layer caching and build optimization
- Implement security best practices (non-root user, minimal attack surface)
- Set up proper file permissions and ownership
3. **Build Process Configuration**
- Configure .dockerignore file to exclude unnecessary files
- Set up build arguments and environment variables
- Implement build-time dependency installation and cleanup
- Configure application bundling and asset optimization
- Set up proper build context and file structure
4. **Runtime Configuration**
- Configure application startup and health checks
- Set up proper signal handling and graceful shutdown
- Configure logging and output redirection
- Set up environment-specific configuration management
- Configure resource limits and performance tuning
5. **Security Hardening**
- Run application as non-root user with minimal privileges
- Configure security scanning and vulnerability assessment
- Implement secrets management and secure credential handling
- Set up network security and firewall rules
- Configure security policies and access controls
6. **Docker Compose Configuration**
- Create docker-compose.yml for local development
- Configure service dependencies and networking
- Set up volume mounting and data persistence
- Configure environment variables and secrets
- Set up development vs production configurations
7. **Container Orchestration Preparation**
- Prepare configurations for Kubernetes deployment
- Create deployment manifests and service definitions
- Configure ingress and load balancing
- Set up persistent volumes and storage classes
- Configure auto-scaling and resource management
8. **Monitoring and Observability**
- Configure application metrics and health endpoints
- Set up logging aggregation and centralized logging
- Configure distributed tracing and monitoring
- Set up alerting and notification systems
- Configure performance monitoring and profiling
9. **CI/CD Integration**
- Configure automated Docker image building
- Set up image scanning and security validation
- Configure image registry and artifact management
- Set up automated deployment pipelines
- Configure rollback and blue-green deployment strategies
10. **Testing and Validation**
- Test container builds and functionality
- Validate security configurations and compliance
- Test deployment in different environments
- Validate performance and resource utilization
- Test backup and disaster recovery procedures
- Create documentation for container deployment and management
© davila7 · MIT · davila7/claude-code-templates