Generates docker-compose.yml files for multi-container apps with services, networks, volumes, health checks, resource limits, and environment overrides for dev/prod.
From docker-compose-generatornpx claudepluginhub nickloveinvesting/nick-love-plugins --plugin docker-compose-generatorThis skill is limited to using the following tools:
assets/README.mdassets/compose_template.ymlassets/example_app_architectures.mdreferences/README.mdscripts/README.mdscripts/deploy.shscripts/generate_env_file.pyscripts/validate_compose.shGuides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Details PluginEval's skill quality evaluation: 3 layers (static, LLM judge), 10 dimensions, rubrics, formulas, anti-patterns, badges. Use to interpret scores, improve triggering, calibrate thresholds.
Generate production-ready docker-compose.yml files for multi-container applications. Define services, networks, volumes, health checks, resource limits, and environment-specific overrides for local development, testing, and single-host production deployments.
docker compose version).env files for configurationdocker-compose*.yml files, and application entry pointsdepends_on with health check conditions to ensure proper startup orderdeploy.resources.limits) for CPU and memory to prevent a single container from exhausting the hostdocker-compose.override.yml for development, docker-compose.prod.yml for productiondocker compose config to check for syntax errorsdocker-compose.yml with service definitions, networks, and volumesdocker-compose.override.yml, docker-compose.prod.yml).env file template with documented variablesstart.sh, stop.sh, logs.sh)| Error | Cause | Solution |
|---|---|---|
port is already allocated | Another container or host process using the same port | Change the host port mapping or stop the conflicting process |
network not found | Referenced network not defined in the compose file | Add the network under the top-level networks: key |
service depends on undefined service | Typo in depends_on or missing service definition | Verify service names match exactly between depends_on and service definitions |
volume mount permission denied | Host directory owned by different user than container process | Use user: directive in service or set proper ownership with an init script |
OOM killed | Container exceeded memory limit | Increase deploy.resources.limits.memory or optimize application memory usage |