-
Welcome
-
The philosophy of Chainguard images
-
How to build with Chainguard: Tags
-
How to build with Chainguard: Image variants
-
How to build with Chainguard (multi-stage builds)
-
How to build with Chainguard: Migration differences
-
How to build with Chainguard: Application images
-
Differences from upstream images: User permissions
-
Differences from upstream images: Entrypoints
-
Dependency hygiene
-
Keeping up with changes
-
Resources & thank you
-
Short course feedback
Chainguard 101: Secure container images basics
Course 1 of 14 in Chainguard Containers Onboarding Guide
Learn how to build, run, and maintain applications on secure, minimal Chainguard Containers with confidence.
This course introduces the fundamentals of Chainguard Images: What are they, why do they matter, and how can you use them effectively? You’ll learn about dev vs. distroless variants, multi-stage builds, tagging strategies, dependency hygiene, and best practices for keeping your images CVE-free and up to date. Perfect for developers, operators, and teams beginning their journey with Chainguard.
By the end of this course, you will be able to:
- Explain what Chainguard Images are and how they differ from upstream alternatives.
- Identify when to use dev vs. distroless variants.
- Build applications using multi-stage builds with Chainguard Images.
- Apply best practices for tagging, versioning, and using digests.
- Manage dependencies safely with APK and Chainguard Custom Assembly.
- Recognize how to keep images secure and CVE-free using tools like Digestabot.
- Understand how Chainguard Images integrate with app images, Helm charts, and the wider ecosystem.