ScriptsApr 16, 2026·3 min read

Finch — Open Source Container Development by AWS

Finch is an open-source container development tool by AWS that provides a seamless Docker-compatible CLI backed by containerd, nerdctl, and Lima.

TL;DR
Finch is an AWS-backed open-source container tool with a Docker-compatible CLI built on containerd, nerdctl, and Lima.
§01

What it is

Finch is an open-source container development tool created by AWS. It provides a Docker-compatible CLI for building, running, and pushing container images. Under the hood, Finch uses containerd as the runtime, nerdctl as the CLI interface, and Lima for managing a Linux VM on macOS.

Finch targets developers who want a free, open-source alternative to Docker Desktop. It is particularly relevant for AWS-oriented teams who want container tooling aligned with the containerd ecosystem that EKS and ECS use in production.

§02

How it saves time or tokens

Finch provides a familiar Docker-like workflow without the Docker Desktop license. The CLI commands mirror Docker's, so existing muscle memory and scripts transfer directly. Finch also supports multi-platform builds (amd64, arm64) natively, which is useful for teams building container images that run on both x86 and ARM infrastructure.

Because Finch uses the same containerd runtime as EKS and ECS, images built locally behave identically in production, reducing the 'works on my machine' gap.

§03

How to use

  1. Install Finch on macOS:
brew install --cask finch
  1. Initialize the VM and start using containers:
finch vm init
finch vm start

# Run a container
finch run -d -p 8080:80 nginx

# Build an image
finch build -t myapp:latest .
  1. Push to a registry:
finch push myapp:latest public.ecr.aws/myrepo/myapp:latest
§04

Example

Building a multi-platform image for both x86 and ARM:

# Create a multi-platform builder
finch build --platform linux/amd64,linux/arm64 \
  -t myapp:latest .

# Verify the image supports both architectures
finch inspect myapp:latest | grep Architecture

This produces a single image manifest that works on both Intel and Apple Silicon machines, as well as AWS Graviton instances.

§05

Related on TokRepo

§06

Common pitfalls

  • Expecting full Docker Compose support. Finch supports basic compose files via nerdctl compose, but advanced features (profiles, extends) may not work identically to Docker Compose.
  • VM resource limits. The default Lima VM has limited CPU and memory. Increase resources with finch vm stop && finch vm init --cpus 4 --memory 8GiB for heavy builds.
  • macOS-only limitation. As of 2026, Finch officially supports macOS. Windows support is in development. Linux users can use containerd and nerdctl directly.

Frequently Asked Questions

How is Finch different from Docker Desktop?+

Finch is open source (Apache-2.0) and free for all use cases. Docker Desktop requires a paid subscription for organizations with 250+ employees. Both provide similar container development workflows, but Finch uses containerd instead of Docker Engine.

Does Finch work with existing Dockerfiles?+

Yes. Finch builds standard OCI images from Dockerfiles. The build command syntax is nearly identical to Docker: 'finch build -t myimage .' replaces 'docker build -t myimage .'

Can I use Finch with AWS ECR?+

Yes. Finch integrates with Amazon ECR for pushing and pulling images. Use 'finch login' with ECR credentials or configure the AWS credential helper for seamless authentication.

Does Finch support Kubernetes development?+

Not directly. Finch focuses on container image building and running. For local Kubernetes, pair Finch with tools like kind (Kubernetes in Docker/containerd) or minikube.

What container runtime does Finch use?+

Finch uses containerd, the same runtime that powers Amazon EKS, Amazon ECS, and many Kubernetes distributions. This means images built with Finch behave identically in production containerd environments.

Citations (3)
  • Finch GitHub— Finch is an open-source container development tool by AWS
  • containerd GitHub— containerd is the industry-standard container runtime
  • nerdctl GitHub— nerdctl provides Docker-compatible CLI for containerd

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets