docker

Generate Dockerfiles and docker-compose.yml files with multi-stage builds and health checks.

3|Updated May 28, 2026
One-click install
npx skills add https://github.com/mahg-es/araya --skill docker-mahg-es
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: docker
Source: https://github.com/mahg-es/araya/tree/main/skills/docker
Command: npx skills add https://github.com/mahg-es/araya --skill docker-mahg-es

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Design and generate Dockerfiles, docker-compose configurations, and container strategies to provide reproducible, secure, and scalable runtime environments across development, staging, and production.

Core Features & Use Cases

  • Generate multi-stage Dockerfiles with optimized layers for size and security
  • Produce docker-compose.yml files for multi-service orchestration with health checks
  • Create .dockerignore to minimize build contexts and improve build times
  • Offer development overrides via optional docker-compose.override.yml
  • Use case: containerize a microservice app and run it locally with consistent environments

Quick Start

Provide your project source and service requirements, and generate a Dockerfile and docker-compose.yml accordingly.

Frequently Asked Questions about docker

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a Dockerfile with multi-stage builds for production?

To create a multi-stage Dockerfile, define separate builder and runtime stages to compile source code and copy only essential artifacts, ensuring optimized layers, reduced image size, and enhanced security for production deployments.

How do I configure docker-compose for multi-service orchestration with health checks?

Configure docker-compose.yml by defining each isolated service, specifying dependencies, and adding health check parameters to orchestrate multi-service applications reliably across development and staging environments with proper startup sequencing.

Why do I need a .dockerignore file and how does it improve build times?

A .dockerignore file excludes unnecessary local files from the build context, minimizing the data sent to the daemon, which significantly improves build times and prevents sensitive files from leaking into images.

What is the best way to enforce non-root execution in container configurations?

The best way to enforce non-root execution is generating Dockerfiles that explicitly create and switch to a non-root user, applying operational security best practices to isolate services and prevent unauthorized privilege escalation.

Can I use docker-compose.override.yml for development environment overrides?

Yes, you can use an optional docker-compose.override.yml to apply development-specific configurations over your base docker-compose.yml, enabling local hot-reloading and debug settings without altering staging or production service definitions.

When should I pin image digests in Dockerfiles instead of tags?

Pin image digests in Dockerfiles during staging and production workflows to ensure reproducible runtime environments, preventing unexpected breaking changes that occur when relying solely on mutable version tags.