GIT-014 recommended local-dev

Docker Compose for services

Third-party services available via Docker Compose with matching env vars

Question to ask

"How many external accounts does a dev need before first run?"

Verification guide

Severity: Recommended

Check automatically:

ls -la docker-compose.yml docker-compose.yaml compose.yml compose.yaml 2>/dev/null

If found, verify it includes services the app needs:

  • Database (postgres, mysql, mongodb)
  • Cache (redis, memcached)
  • Queue (rabbitmq, kafka)
  • Any other dependencies

Cross-reference with GIT-001:

  • What services did we need to run the app?
  • Are they all in Docker Compose?

Cross-reference env vars with Docker Compose services:

  • Check .env.example for connection strings (DATABASE_URL, REDIS_URL, etc.)
  • Verify they match Docker Compose service names and ports
  • Example: DATABASE_URL=postgres://user:pass@localhost:5432/db should match postgres service exposing port 5432
  • Flag mismatches (wrong port, wrong hostname, service not in compose)

Test it works:

docker compose config  # Validates the file
docker compose up -d   # Actually start services
docker compose ps      # Verify they're running
docker compose down    # Clean up

Pass criteria:

  • Docker Compose exists with third-party services, OR project has no external dependencies
  • Env var connection strings match Docker Compose services (ports, hostnames)
  • Services start successfully

Fail criteria:

  • Project requires external services but no Docker Compose
  • Docker Compose missing required services
  • Env vars don't match Docker Compose (wrong ports, missing services)
  • Docker Compose file is broken/invalid

If no compose file, ask user: "Does this project require external services (database, Redis, etc.) to run locally? If yes, how are developers expected to set them up?"

Evidence to capture:

  • Docker Compose exists (yes/no)
  • Services defined vs services needed
  • Env var connection strings and whether they match compose
  • Any gaps or mismatches

Section

01. Git Repo Setup & Security

Infrastructure & Setup