autojanet/skills/understand/languages/dockerfile.md
Zoë cc74ad0bd0
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
fix: use library/ Harbor project, add skills, fix pipeline secrets
- .woodpecker.yaml: image paths -> library/autojanet-{agent,dispatcher}
- .woodpecker.yaml: secret names RS_HARBOR_USER / RS_HARBOR_PASS (global)
- container/Dockerfile: restore COPY skills/, skills/ populated from opencode config
- skills/: 84 opencode skills bundled into image
- k8s/manifests: update image refs to library/
2026-05-30 15:43:14 -07:00

1.9 KiB

Dockerfile Language Prompt Snippet

Key Concepts

  • Multi-Stage Builds: Multiple FROM statements to separate build and runtime stages, reducing image size
  • Layer Caching: Each instruction creates a layer; order instructions from least to most frequently changing for cache efficiency
  • Base Images: FROM image:tag selects the starting image; prefer slim/alpine variants for smaller images
  • COPY vs ADD: COPY for local files (preferred), ADD for URLs and tar extraction
  • Build Arguments: ARG for build-time variables, ENV for runtime environment variables
  • Health Checks: HEALTHCHECK instruction for container orchestrator readiness probes
  • Entry Point vs CMD: ENTRYPOINT sets the executable, CMD provides default arguments
  • User Permissions: USER instruction to run as non-root for security
  • Ignore Patterns: .dockerignore excludes files from the build context (like .gitignore)

Notable File Patterns

  • Dockerfile — Primary container image definition (at project root)
  • Dockerfile.dev / Dockerfile.prod — Environment-specific Dockerfiles
  • docker-compose.yml — Multi-container application orchestration
  • docker-compose.override.yml — Local development overrides
  • .dockerignore — Build context exclusion patterns

Edge Patterns

  • Dockerfile deploys the application entry point it packages (COPY/CMD target)
  • docker-compose depends_on Dockerfile(s) it references for building
  • Dockerfile depends_on package manifests (package.json, requirements.txt) it copies for dependency installation
  • docker-compose services create related edges between co-deployed components

Summary Style

"Multi-stage Docker build producing a minimal Node.js production image with N build stages." "Docker Compose configuration orchestrating N services with shared networking and persistent volumes." "Development Dockerfile with hot-reload support and mounted source volumes."