๐ docker-image
A utility crate for parsing Docker image references.
Features
- Parse Docker image references into structured components:
- Registry (e.g.,
docker.io,ghcr.io) - Name (e.g.,
nginx,library/nginx) - Tag (e.g.,
latest,v1.0.0) - Digest (e.g.,
sha256:<64-character-digest>)
- Registry (e.g.,
- Validate Docker image references against Docker's official naming rules.
- Designed for safety:
#![no_std]compatible for embedded and minimal environments (howeverallocremains a requirement).#![forbid(unsafe_code)]ensures memory safety.
- Minimum Supported Rust Version (MSRV): Rust 1.81.0
- This is the earliest version of Rust required to use this library.
- Note: The MSRV may increase in future releases due to updates in dependencies or library features.
Supported Formats:
nginxnginx:latestdocker.io/library/nginxdocker.io/library/nginx:latestdocker.io/library/nginx@sha256:<digest>docker.io/library/nginx:latest@sha256:<digest>
Not Supported:
- Unicode characters in names, tags, or digests.
- Uppercase letters in names (Docker requires lowercase).
- Invalid or malformed registries, tags, or digests.
Usage Examples
Parsing a Docker Image Reference
use DockerImage;
Invalid Docker Image Reference
use DockerImage;
Display Implementation
use DockerImage;