<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Building and modifying Chainguard Containers on</title><link>https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/</link><description>Recent content in Building and modifying Chainguard Containers on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><copyright>Copyright (c) 2023 Chainguard</copyright><lastBuildDate>Fri, 04 Sep 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/index.xml" rel="self" type="application/rss+xml"/><item><title>Adding a package to a Chainguard Container</title><link>https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/adding-packages/</link><pubDate>Wed, 09 Sep 2026 00:00:00 +0000</pubDate><guid>https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/adding-packages/</guid><description>&lt;p&gt;Chainguard Containers ship with only the packages their application needs, so sooner or later you&amp;rsquo;ll want one that isn&amp;rsquo;t there. &lt;a href="https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/custom-assembly/overview/"&gt;Custom Assembly&lt;/a&gt; is the supported way to add it. You declare the package you want, Chainguard builds the image on its own infrastructure, and Chainguard rebuilds that image whenever the package is updated. You can drive Custom Assembly from the Chainguard Console, interactively with &lt;code&gt;chainctl&lt;/code&gt;, or non-interactively with &lt;code&gt;chainctl&lt;/code&gt; from a pipeline.&lt;/p&gt;</description></item><item><title>Installing APK packages in distroless variants</title><link>https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/install-apks-in-distroless-variants/</link><pubDate>Tue, 21 Apr 2026 00:00:01 +0000</pubDate><guid>https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/install-apks-in-distroless-variants/</guid><description>&lt;p&gt;This page documents workflows for installing APK packages in &lt;a href="https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/concepts/getting-started-distroless/"&gt;distroless variants&lt;/a&gt; of Chainguard container images, such as most builds tagged &lt;code&gt;:latest&lt;/code&gt;. We copy a filesystem from a distroless container image to a build image, install APKs to it using &lt;code&gt;chroot&lt;/code&gt;, then copy the modified filesystem back to the distroless image in the final step.&lt;/p&gt;
&lt;h2 id="overview-installing-packages-in-distroless-containers" class="heading-2" data-heading-level="2"&gt;
&lt;span class="heading-text"&gt;Overview: Installing packages in distroless containers&lt;/span&gt;
&lt;a href="#overview-installing-packages-in-distroless-containers" class="anchor" aria-label="Link to Overview: Installing packages in distroless containers" title="Link to this section"&gt;
&lt;svg width="16" height="9" viewBox="0 0 16 9" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"&gt;
&lt;path d="M6.833 8.125H4C3 8.125 2.146 7.77067 1.438 7.062C0.729333 6.354 0.375 5.5 0.375 4.5C0.375 3.5 0.729333 2.646 1.438 1.938C2.146 1.22933 3 0.875 4 0.875H6.833V1.958H4C3.30533 1.958 2.708 2.208 2.208 2.708C1.708 3.208 1.458 3.80533 1.458 4.5C1.458 5.19467 1.708 5.792 2.208 6.292C2.708 6.792 3.30533 7.042 4 7.042H6.833V8.125ZM5.208 5.042V3.958H10.792V5.042H5.208ZM9.167 8.125V7.042H12C12.6947 7.042 13.292 6.792 13.792 6.292C14.292 5.792 14.542 5.19467 14.542 4.5C14.542 3.80533 14.292 3.208 13.792 2.708C13.292 2.208 12.6947 1.958 12 1.958H9.167V0.875H12C13 0.875 13.854 1.22933 14.562 1.938C15.2707 2.646 15.625 3.5 15.625 4.5C15.625 5.5 15.2707 6.354 14.562 7.062C13.854 7.77067 13 8.125 12 8.125H9.167Z" fill="currentColor"/&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: The chroot workflow on this page is one of several ways to add a package to a Chainguard Container, and it&amp;rsquo;s the most involved. For a comparison of all of them, see &lt;a href="https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/adding-packages/"&gt;Adding a package to a Chainguard Container&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Building minimal container images</title><link>https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/building-minimal-containers/</link><pubDate>Wed, 30 Aug 2023 15:21:01 +0000</pubDate><guid>https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/building-minimal-containers/</guid><description>&lt;p&gt;The less software a container image holds, the less there is to transfer, to maintain, and to attack. Chainguard&amp;rsquo;s &lt;a href="https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/concepts/getting-started-distroless/"&gt;distroless&lt;/a&gt; container images take that as far as it goes: no shell, no package manager, and only the libraries the application needs.&lt;/p&gt;
&lt;p&gt;That raises a practical question: without a shell or a package manager, how do you get your application into the image? The answer is a multi-stage build. One stage compiles or assembles your application with all the tooling that requires, and the final stage copies the result into a minimal base. This page covers both shapes that build takes, depending on whether your application needs a language runtime once it&amp;rsquo;s running.&lt;/p&gt;</description></item><item><title>Chainguard packages</title><link>https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/packages/</link><pubDate>Fri, 12 Sep 2025 08:48:45 +0000</pubDate><guid>https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/packages/</guid><description/></item><item><title>Build tools</title><link>https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/build-tools/</link><pubDate>Fri, 04 Sep 2026 00:00:00 +0000</pubDate><guid>https://deploy-preview-3927--ornate-narwhal-088216.netlify.app/chainguard/containers/building-and-modifying/build-tools/</guid><description/></item></channel></rss>