containerregistry-auth 0.1.1

Docker config and credential helper integration
Documentation

Docker config and credential helper integration.

This crate provides functionality for resolving container registry credentials from Docker config files and credential helpers.

Overview

The main types in this crate are:

  • [AuthResolver] - Resolves credentials for a registry
  • [Credential] - A credential (anonymous, basic, bearer, etc.)
  • [DockerConfig] - Parsed Docker config file

Example

use containerregistry_auth::{AuthResolver, Credential};

// Create a resolver that loads from default Docker config
let resolver = AuthResolver::new();

// Resolve credentials for a registry
let cred = resolver.resolve("gcr.io")?;

// Use the credential
if let Some(header) = cred.authorization_header() {
    println!("Authorization: {}", header);
}
# Ok::<(), containerregistry_auth::Error>(())

Resolution Order

The resolver checks multiple sources in order of precedence:

  1. Explicit credentials (if set via [AuthResolver::with_explicit])
  2. Docker config auths section (base64-encoded or plaintext)
  3. Registry-specific credential helper (credHelpers)
  4. Default credential store (credsStore)
  5. Anonymous access (fallback)