Expand description
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 registryCredential- 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);
}§Resolution Order
The resolver checks multiple sources in order of precedence:
- Explicit credentials (if set via
AuthResolver::with_explicit) - Docker config
authssection (base64-encoded or plaintext) - Registry-specific credential helper (
credHelpers) - Default credential store (
credsStore) - Anonymous access (fallback)
Structs§
- Auth
Entry - An auth entry from the Docker config’s “auths” section.
- Auth
Resolver - A resolver for container registry credentials.
- Credential
Helper - A credential helper that can retrieve credentials for registries.
- Docker
Config - Docker config file structure.
- Helper
Credential - Response from a credential helper’s “get” command.
Enums§
- Credential
- A credential for authenticating to a container registry.
- Error
- Errors that can occur during auth operations.
Type Aliases§
- Result
- Result type for auth operations.