Artifact Registry stores the following artifact formats.
Formats | |
---|---|
Docker | Store Docker container images and Helm charts packaged in OCI format. For more information on container image formats, see Container images. |
Maven | Store Java packages that you build with Maven or Gradle. For more information on storing Java packages in Artifact Registry, see Manage Java packages. |
npm | Store Node.js packages that you manage with npm. For more information on storing Node.js packages in Artifact Registry, see Manage Node.js packages |
Python | Store Python packages. For more information on storing Python packages in Artifact Registry, see Manage Python packages |
Apt | Store Debian packages that you manage with Apt. For more information on storing Debian packages in Artifact Registry, see Manage Debian packages. |
Yum | Store RPM packages that you manage with Yum and DNF. For more information on storing RPM packages, see Manage RPM packages. |
Kubeflow | Store Kubeflow pipeline templates. A pipeline template lets you reuse ML workflow definitions when you're managing ML workflows in Vertex AI. Vertex AI is the Google Cloud ML platform for building, deploying, and managing ML models. To learn about creating pipeline templates and using them with Artifact Registry, see Create, upload, and use a pipeline template. |
Go | Store Go modules. For more information on storing Go modules in Artifact Registry, see Work with Go modules. |
Generic (Preview) | Store generic artifacts. Generic artifacts are versioned, immutable artifacts that don't adhere to any specific package format. For more information on storing generic artifacts in Artifact Registry, see Work with other artifact formats. |
Container images
Artifact Registry supports the following container image formats:
- Docker Image Manifest V2, Schema 1
- Docker Image Manifest V2, Schema 2
- Open Container Initiative (OCI) Image Format Specifications
Docker V2
Docker V2 image manifest is a specification for container images that allows multi-architecture images and supports content-addressable images.
Docker V2 images supersede Docker V1 images, which are deprecated.
OCI Image Format
The OCI image format is a specification for container images based on the Docker Image Manifest Version 2, Schema 2 format. Artifact Registry implements the OCI Specification, an API protocol to help standardize distribution of content.
You can store artifacts that support the OCI image format in Artifact Registry Docker repositories. For example:
- Helm 3 charts can be packaged in OCI format. For more information, see the Artifact Registry Helm overview.
Singularity supports pulling Docker and OCI images from private registries and pushing and pulling images in Singularity Image File (SIF) format with private registries.
- Authentication is similar to authentication for
Docker clients.
Singularity can read settings that the credential helper added to the
Docker client
config.json
. If you are using a token or service account key for password authentication, you can use the singularity remote login command to log in with your credentials. - Use the singularity pull command with the
oras://
URI to pull images. - Use the singularity push command with the
oras://
URI to push images.
For example, the following command pulls
my-app:latest
from the repositoryus-west1.pkg.dev/my-project/sif-repo
.singularity pull oras://us-west1.pkg.dev/my-project/sif-repo/my-app:latest`
- Authentication is similar to authentication for
Docker clients.
Singularity can read settings that the credential helper added to the
Docker client
Manifest lists and image indexes
Manifest lists are part of the Docker V2, Schema 2 and OCI images.
Manifest lists allow a single digest or tag to represent multiple forms of an image.
Image indexes are the equivalent of manifest lists in OCI images.
Like manifest lists, an image index manifest refers to multiple image manifests. Image indexes are useful for multi-platform images.