<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Migration Guides on</title><link>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/</link><description>Recent content in Migration Guides on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><lastBuildDate>Thu, 16 Jan 2025 18:42:57 +0000</lastBuildDate><atom:link href="https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/index.xml" rel="self" type="application/rss+xml"/><item><title>Migrating to PHP Chainguard Containers</title><link>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/migrating-php/</link><pubDate>Thu, 04 Apr 2024 15:56:52 -0700</pubDate><guid>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/migrating-php/</guid><description>Chainguard&amp;rsquo;s PHP containers provide enhanced security for PHP applications through minimal, purpose-built images that significantly reduce attack surface. Built on Wolfi, these containers achieve dramatically fewer vulnerabilities compared to traditional PHP images while maintaining full compatibility with PHP workloads. Daily automated builds ensure applications receive the latest security patches without manual intervention.
This article will assist you in the process of migrating your existing PHP Dockerfiles to leverage the benefits of Chainguard Containers, including a smaller attack surface and a more secure application footprint.</description></item><item><title>Migrating to Node.js Chainguard Containers</title><link>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/migrating-node/</link><pubDate>Thu, 09 May 2024 15:56:52 -0700</pubDate><guid>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/migrating-node/</guid><description>Chainguard&amp;rsquo;s Node.js containers offer a streamlined migration path for applications seeking enhanced security posture through minimal, distroless design. Built on Wolfi, these containers significantly reduce attack surface compared to traditional Node.js images, resulting in fewer vulnerabilities and smaller image sizes. Daily automated builds ensure your applications always have the latest security patches without manual intervention.
What is Distroless?
Distroless container images are minimal container images containing only essential software required to build or execute an application.</description></item><item><title>How to Migrate a Node.js Application to Chainguard Containers</title><link>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/node-images/</link><pubDate>Thu, 25 Apr 2024 15:21:01 +0000</pubDate><guid>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/node-images/</guid><description>Tools used in this video Docker Resources Tutorial on Porting a Sample Application Example Application Git repository with code used in demo What are multi-stage builds?
Multi-stage builds are a Docker feature that allow you to use multiple FROM statements in a single Dockerfile, where each statement begins a new build stage. In a typical pattern, an early stage uses a full-featured builder image to compile code or generate artifacts, while a later stage uses a minimal runtime image and copies in only what's needed to run the application.</description></item><item><title>Migrating to Python Chainguard Containers</title><link>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/migrating-python/</link><pubDate>Thu, 02 May 2024 15:06:00 -0700</pubDate><guid>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/migrating-python/</guid><description>Chainguard&amp;rsquo;s Python containers provide a migration path to significantly reduce vulnerabilities in Python applications while maintaining full compatibility with existing workloads. This guide explains how to migrate your containerized Python applications to benefit from Chainguard&amp;rsquo;s enhanced security posture and daily updates.
Chainguard Containers are built on Wolfi, a distroless Linux distribution designed for security and a reduced attack surface. Chainguard Containers are smaller and have low to no CVE. Our Chainguard Containers for Python are built nightly for extra freshness, so they&amp;rsquo;re always up-to-date with the latest remediations.</description></item><item><title>Migrating to .NET Chainguard Containers</title><link>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/migrating-dotnet/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/migrating-dotnet/</guid><description>Chainguard&amp;rsquo;s .NET container images provide a security-hardened foundation for building and running applications with significantly fewer vulnerabilities than .NET images provided by Microsoft. Chainguard&amp;rsquo;s .NET container images maintain full .NET compatibility while dramatically reducing the attack surface.
This guide demonstrates migrating a .NET application from Microsoft&amp;rsquo;s official images to Chainguard&amp;rsquo;s .NET container images by comparing two nearly identical versions of an application side-by-side. This guide also highlights concrete examples of the security improvements resulting from migrating to Chainguard Containers.</description></item><item><title>Migrating a Dockerfile for a Go application to use Chainguard Containers</title><link>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/migrating_go/</link><pubDate>Wed, 07 Feb 2024 01:21:01 +0000</pubDate><guid>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/migrating_go/</guid><description>What are multi-stage builds?
Multi-stage builds are a Docker feature that allow you to use multiple FROM statements in a single Dockerfile, where each statement begins a new build stage. In a typical pattern, an early stage uses a full-featured builder image to compile code or generate artifacts, while a later stage uses a minimal runtime image and copies in only what's needed to run the application. Only what you explicitly copy from one stage carries forward — everything else is discarded when that stage completes.</description></item><item><title>How to Migrate a Java Application to Chainguard Containers</title><link>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/java-images/</link><pubDate>Tue, 02 Apr 2024 15:21:01 +0000</pubDate><guid>https://deploy-preview-3155--ornate-narwhal-088216.netlify.app/chainguard/migration/migration-guides/java-images/</guid><description>Tools used in this video Docker Resources Blog on bootstrapping Java in Wolfi Learning Labs Git repository with code used in demo What are multi-stage builds?
Multi-stage builds are a Docker feature that allow you to use multiple FROM statements in a single Dockerfile, where each statement begins a new build stage. In a typical pattern, an early stage uses a full-featured builder image to compile code or generate artifacts, while a later stage uses a minimal runtime image and copies in only what's needed to run the application.</description></item></channel></rss>