{"id":"linuxserver-docker-compose","name":"docker-compose","af_score":31.0,"security_score":20.5,"reliability_score":33.8,"what_it_does":"docker-compose is a tool for defining and running multi-container Docker applications using a YAML configuration (docker-compose.yml). It orchestrates services (start/stop/scale) on a single Docker host and commonly replaces manually running docker run for local development and many deployments.","best_when":"You need a straightforward way to orchestrate a small-to-medium set of containers on one machine for development or single-host deployment.","avoid_when":"You need multi-host orchestration, strict compliance/auditing controls, or an externally facing service API with strong auth/error semantics.","last_evaluated":"2026-03-30T13:52:32.222566+00:00","has_mcp":false,"has_api":false,"auth_methods":["none (local CLI)"],"has_free_tier":false,"known_gotchas":["docker-compose commands are stateful (container/network/volume state affects outcomes)","Credentials often end up in compose files or environment variables—agents may accidentally expose secrets if not carefully handled","Network/port binding and volume mounts can differ between environments; ensure consistent configuration","docker-compose v1 vs compose v2 command differences (e.g., `docker compose` vs `docker-compose`) can break automation scripts"],"error_quality":0.0}