logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

containers-registries.d - Directory for various registries configurations

Authors

Miloslav Trmač mitr@redhat.commailto:mitr@redhat.com⟩ Man Registries.d containers-registries.d(5)

Description

The registries configuration directory contains configuration for various registries (servers storing remote container images), and for content stored in them, so that the configuration does not have to be provided in command-line options over and over for every command, and so that it can be shared by all users of containers/image. By default, the registries configuration directory is $HOME/.config/containers/registries.d if it exists, otherwise /etc/containers/registries.d (unless overridden at compile-time); applications may allow using a different directory instead.

Directory Structure

The directory may contain any number of files with the extension .yaml, each using the YAML format. Other than the mandatory extension, names of the files don’t matter. The contents of these files are merged together; to have a well-defined and easy to understand behavior, there can be only one configuration section describing a single namespace within a registry (in particular there can be at most one one default-docker section across all files, and there can be at most one instance of any key under the docker section; these sections are documented later). Thus, it is forbidden to have two conflicting configurations for a single registry or scope, and it is also forbidden to split a configuration for a single registry or scope across more than one file (even if they are not semantically in conflict).

Examples

UsingContainersfromVariousOrigins The following demonstrates how to to consume and run images from various registries and namespaces: docker: registry.database-supplier.com: lookaside: https://lookaside.database-supplier.com distribution.great-middleware.org: lookaside: https://security-team.great-middleware.org/lookaside docker.io/web-framework: lookaside: https://lookaside.web-framework.io:8080 DevelopingandSigningContainers,StagingSignatures For developers in example.com: • Consume most container images using the public servers also used by clients. • Use a separate signature storage for an container images in a namespace corresponding to the developers' department, with a staging storage used before publishing signatures. • Craft an individual exception for a single branch a specific developer is working on locally. docker: registry.example.com: lookaside: https://registry-lookaside.example.com registry.example.com/mydepartment: lookaside: https://lookaside.mydepartment.example.com lookaside-staging: file:///mnt/mydepartment/lookaside-staging registry.example.com/mydepartment/myproject:mybranch: lookaside: http://localhost:4242/lookaside lookaside-staging: file:///home/useraccount/webroot/lookaside AGlobalDefault If a company publishes its products using a different domain, and different registry hostname for each of them, it is still possible to use a single signature storage server without listing each domain individually. This is expected to rarely happen, usually only for staging new signatures. default-docker: lookaside-staging: file:///mnt/company/common-lookaside-staging

Individual Configuration Sections

A single configuration section is selected for a container image using the process described above. The configuration section is a YAML mapping, with the following keys: • lookaside-staging defines an URL of of the signature storage, used for editing it (adding or deleting signatures). This key is optional; if it is missing, lookaside below is used. • lookaside defines an URL of the signature storage. This URL is used for reading existing signatures, and if lookaside-staging does not exist, also for adding or removing them. This key is optional; if it is missing, no signature storage is defined (no signatures are download along with images, adding new signatures is possible only if lookaside-staging is defined). • use-sigstore-attachments specifies whether sigstore image attachments (signatures, attestations and the like) are going to be read/written along with the image. If disabled, the images are treated as if no attachments exist; attempts to write attachments fail.

Name

containers-registries.d - Directory for various registries configurations

See Also