clipper push

Convert a local image and push to a chunked registry.

clipper push <image> <dst> [flags]

Arguments

ArgumentDescription
<image>Local image to push (e.g. ubuntu:24.04)
<dst>Destination reference (e.g. myuser/ubuntu:latest)

Flags

FlagDefaultDescription
-j, --jobs4Parallel upload workers
--runtimeauto-detectForce container runtime: containerd, podman, or docker
--platformhost platformTarget platform (e.g. linux/amd64)

Examples

Push a Docker Hub image

docker pull nginx:latest
clipper push nginx:latest myuser/nginx:latest

Push to a specific org

clipper push myapp:v1.2 myorg/myapp:v1.2

Push with more parallelism

clipper push large-image:latest myuser/large-image:latest -j 32

Push a specific platform

clipper push --platform linux/amd64 myimage:latest myuser/myimage:latest

Push from containerd

sudo clipper push --runtime containerd myimage:latest myuser/myimage:latest

How it works

  1. Reads the image from the local container runtime (Docker, containerd, or Podman)
  2. Breaks each layer into chunks
  3. Uploads only chunks not already present in the registry
  4. Pushes the manifest referencing the chunked layers

Subsequent pushes of similar images skip chunks that already exist, making updates fast.