Skip to main content

docker-compose-helper

Use when the user asks to create, debug, or modify Docker Compose files, compose.yaml, docker-compose.yml, service dependencies, healthchecks, ports, volumes, networks, environment variables, or local multi-container development stacks. Use this skill even if the user says "compose file" or "local stack" instead of "Docker Compose".

Source facts

Repository
antongulin/opencode-skill-creator
Last source activity
July 5, 2026 at 23:12
Detected SKILL.md language
English
Stars
192
Forks
24

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
3 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
docker-compose-helper
description
Use when the user asks to create, debug, or modify Docker Compose files, compose.yaml, docker-compose.yml, service dependencies, healthchecks, ports, volumes, networks, environment variables, or local multi-container development stacks. Use this skill even if the user says "compose file" or "local stack" instead of "Docker Compose".
# Docker Compose Helper Help users create, review, and repair Docker Compose setups with the smallest working change that fits their local development workflow. ## Workflow 1. Identify the user's goal: - creating a new compose file - adding or changing a service - debugging startup, networking, volume, or environment issues - translating a `docker run` command into compose 2. Inspect existing files before editing: - `compose.yaml` - `compose.yml` - `docker-compose.yaml` - `docker-compose.yml` - `.env` - Dockerfiles referenced by `build` 3. Prefer Docker Compose v2 syntax: - omit the obsolete top-level `version` - use `compose.yaml` if creating a new file - keep service names lowercase and stable 4. Make the smallest useful change. Do not add orchestration, custom networks, or named volumes unless the service needs them. ## Compose Defaults - Use explicit image tags instead of `latest` when a stable tag is obvious. - Use named volumes for database state. - Use bind mounts for application source during local development. - Put secrets and machine-specific values in `.env`, not directly in YAML. - Add `depends_on` only for startup ordering; add `healthcheck` when readiness actually matters. - Expose only the host ports the user needs. ## Debugging Checklist When debugging, check these in order: 1. YAML validity and indentation. 2. Whether the service name, image, build context, and Dockerfile path exist. 3. Port conflicts between host ports and already-running services. 4. Volume paths and whether a bind mount hides files built into the image. 5. Environment variable names, `.env` loading, and missing required values. 6. Container-to-container networking: services should use service names as DNS hosts, not `localhost`. 7. Readiness problems: add a healthcheck and condition only when the dependent service truly must wait. ## Output When editing files, show the changed compose snippet or file path and explain the reason for each non-obvious setting in one short sentence.
View on GitHub