podman-image
Manage container images
TLDR
List local Docker images
Delete unused local Docker images
Delete all unused images (not just those without a tag)
Show the history of a local Docker image
SYNOPSIS
podman image subcommand [options] [arguments]
Common subcommands for podman image include:
build: Build an image using a Containerfile or Dockerfile.
exists: Check if an image exists.
history: Display the history of an image.
import: Import a tarball to create a filesystem image.
inspect: Display detailed information on one or more images.
load: Load an image from a tar archive or STDIN.
ls (or images): List images.
prune: Remove unused images.
pull: Pull an image from a registry.
push: Push an image to a registry.
rm (or rmi): Remove one or more images.
save: Save an image to a tar archive.
sign: Sign an image.
untag: Remove a tag from an image.
PARAMETERS
--help
Display help for the podman image command and its subcommands.
--version
Display the Podman version information.
DESCRIPTION
The podman-image command is a crucial subcommand within the Podman container management system. It provides a comprehensive set of tools for interacting with and managing container images. Unlike traditional daemon-based container engines, Podman operates in a daemonless fashion, and podman-image facilitates operations such as pulling images from registries, pushing images to registries, building images from Dockerfiles or Containerfiles, listing existing images, and removing images. It serves as the central interface for all image-related workflows, enabling users to prepare, distribute, and clean up the building blocks for their containers. It supports OCI (Open Container Initiative) image formats and works seamlessly with various container registries like Docker Hub, Quay.io, and custom registries.
CAVEATS
podman-image operates within the Podman ecosystem, which is designed to be daemonless and rootless-friendly. This means that image operations typically run directly as the invoking user, without requiring a background service like Docker's daemon. Consequently, images managed by one user are generally not visible or accessible by another user unless explicitly configured (e.g., through shared storage or system-wide registries). While podman-image provides similar functionality to docker image, there might be subtle differences in behavior or specific options due to Podman's OCI compliance and daemonless architecture.
IMAGE MANAGEMENT PHILOSOPHY
podman-image embodies Podman's philosophy of daemonless, OCI-compliant container management. Each subcommand under podman image is typically implemented as a separate binary or module within the Podman codebase, which contributes to its robust and modular design. This allows for clearer separation of concerns and can make debugging or auditing specific image operations more straightforward.
COMMON IMAGE WORKFLOWS
Typical workflows involving podman-image include:
1. Development: Using podman image build to create application images from source code and Dockerfiles/Containerfiles.
2. Deployment: Utilizing podman image pull to retrieve necessary base images or application images from registries for local use or deployment.
3. Distribution: Employing podman image push to upload custom-built images to private or public registries for sharing.
4. Maintenance: Using podman image ls to monitor image disk usage and podman image rm or podman image prune to free up space by removing old or unused images.
HISTORY
The podman-image subcommand evolved as part of the broader Podman project, which was initiated by Red Hat engineers around 2017. Its primary goal was to provide an OCI-compliant container engine that offered an alternative to Docker, particularly focusing on daemonless operation and better integration with systemd and traditional Linux tools. podman-image inherited the functionality of Docker's docker image command but was built from the ground up to support Podman's unique architecture. Its development has continuously focused on performance, security (especially rootless capabilities), and compatibility with existing container image standards and registries.
SEE ALSO
podman(1), podman-build(1), podman-pull(1), podman-push(1), podman-rmi(1), podman-images(1), containers-storage(5), container-registries.conf(5)