Build Go Containers with Ko
In this tutorial, you'll learn how to build minimal Go Containers using Ko and Chainguard base images
Product Docs
Open Source
Compliance
Education
Chainguard container images are designed to be minimal and to include special features for increased security and provenance attestation. Depending on your current base image and customizations, you may need to make some adjustments when migrating your current workloads to use Chainguard Containers. This checklist provides a high-level overview of the steps you should consider when migrating to Chainguard Containers.
Download the PDF version of this checklist here!
-dev
suffix and can be customized.-dev
variant and a runtime stage based on a distroless image.USER root
statement may be required before installing software.apt
commands with their apk
equivalents. This also applies for other distros that are not based on apk.-dev
(such as latest-dev
) variant as a starting point.USER root
statement before package installations or other commands that must run as an administrative user.apt install
(or equivalent) with apk add
.apk search
on a running container or the APK Explorer tool to identify packages you need – some commands might be available with different names or bundled with different packages.For detailed migration guidance, please refer to our Migration Docs on Chainguard Academy. For troubleshooting, check our Debugging distroless containers resource.
In this tutorial, you'll learn how to build minimal Go Containers using Ko and Chainguard base images
Procedural tutorial outlining how to create a Chainguard identity with Terraform that can be assumed by a Jenkins …
How to use chainctl to create a Chainguard identity that can be assumed by a Jenkins Pipeline.
How to enforce best practices and ensure compliance with OPA Gatekeeper.
Learning Lab for August 2025 on DFC, a tool to convert Dockerfiles to use Chainguard Containers
Last updated: 2025-07-23 16:52