Author

Michael Irwin

Principal Engineer, Developer Success · Docker

Works on Docker’s developer experience and education.

Content by Michael Irwin

Guide
Beginner

Keep data with volumes and bind mounts

A container's files disappear when you remove it. Keep a to-do app's database in a named volume so it survives a new container, bind-mount a directory so you can see the database on your own disk, and learn which one to reach for.

Explore →
Guide
Beginner

Run your first container

Run a real to-do app in a container, reach it from your browser, run a second copy beside it, configure it with an environment variable, look inside it, and see what happens to its data when you remove it.

Explore →
Guide
Beginner

Share your image on Docker Hub

Name your image for a registry, sign in, and push it to Docker Hub with a version tag and latest, then pull it back and run it the way anyone else would.

Explore →
Guide
Beginner

Shrink your image with multi-stage builds

Split a Node.js Dockerfile into build stages and a slim final stage, so the image ships the built frontend and production dependencies but leaves the compilers and dev tools behind. Then measure the difference.

Explore →
Guide
Beginner

What is a container?

Learn what containers and images are, how a container differs from a virtual machine, and where images come from, using registries, repositories, tags, and the trusted content on Docker Hub.

Explore →
Guide
Beginner

Write your first Dockerfile

Write a Dockerfile for a real Node.js app, build it into an image, run it, and call its API, while learning what each instruction does and what the build context is.

Explore →
Guide
Advanced

Build a trusted container delivery pipeline

Write a GitHub Actions release workflow that builds an image with SBOM and provenance attestations, gates it on Docker Scout policy, signs it by digest with keyless Cosign, and only then publishes the release tag.

Explore →
Guide
Advanced

Enforce your organization's container standards

Turn your team's image rules into checks that run on every build: a Buildx build policy that refuses unapproved base images before the build starts, and Docker Scout policies that fail an image that doesn't meet the bar.

Explore →
Guide
Intermediate

Find and fix vulnerabilities before you ship

Scan an image with the Docker Scout CLI, separate the findings you can act on from the ones you can't, fix them by updating dependencies and refreshing the base image, and prove the fix with a side-by-side comparison.

Explore →
Guide
Advanced

Only run trusted images in production

Install Kyverno and write an admission policy that admits an image to the production namespace only when it is signed by your release workflow and carries a signed SBOM, then watch the cluster refuse everything else.

Explore →
Guide
Intermediate

Add tools and runtimes to a sandbox

Package a language runtime as a Docker Sandbox kit. Install it at build time with a Dockerfile, then use lifecycle hooks and config files to prepare each sandbox before the agent starts.

Explore →
Guide
Intermediate

Build your first Docker Sandbox kit

Write a small v3 mixin kit from scratch, validate it with Buildx, run it in a sandbox from a local directory, and see how a kit carries its files, network rules, and agent instructions in one image.

Explore →
Guide
Intermediate

Give your agents reusable skills

Package your team's workflow as an agent skill in a Docker Sandbox kit, add standing guidance beside it, and see an agent find and use both in a fresh sandbox.

Explore →
Guide
Intermediate

Make your Sandbox kits configurable

Turn a kit with hardcoded values into one that serves every team and project. Declare arguments with defaults and constraints, template them into network policy and generated files, and supply values from the CLI, an environment file, or a kit set.

Explore →
Guide
Beginner

Customize your sandbox with kits

Change what's in your sandbox without building anything. Add a published kit to give the agent a browser to test with, then swap the agent itself and keep the browser.

Explore →
Guide
Beginner

What is a sandbox?

A friendly, picture-first look at how a Docker Sandbox keeps an AI agent helpful and your computer safe — the box, the door guard, the pretend key, and the kits you pack inside.

Explore →