Initial commit
This commit is contained in:
93
commands/containerize.md
Normal file
93
commands/containerize.md
Normal file
@@ -0,0 +1,93 @@
|
||||
---
|
||||
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
|
||||
model: claude-sonnet-4-5
|
||||
---
|
||||
|
||||
# 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 or @compose.yaml (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 compose.yaml 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
|
||||
Reference in New Issue
Block a user