Todos los productos
Search
Centro de documentos

Container Registry:Using OCI v1.1.0 Specification to Manage and Associate Container Images and Their Derivative Artifacts

Última actualización: Sep 02, 2026

A partir de abril de 2024, las nuevas instancias de Container Registry Enterprise Edition son compatibles con la especificación de imagen y distribución de Open Container Initiative (OCI) V1.1.0, lo que incluye la compatibilidad con Reference Types. La Referrers API crea un grafo estructurado que vincula SBOM, firmas y resultados de análisis de vulnerabilidades directamente con sus imágenes asociadas, y elimina la necesidad de usar convenciones de nombres de etiquetas para rastrear artefactos de la cadena de suministro. Puede almacenar, gestionar y distribuir estos artefactos de la misma manera que gestiona las imágenes de contenedor.

Requisitos previos

Antes de empezar, asegúrese de contar con lo siguiente:

  • Un cliente OCI Registry As Storage (ORAS) instalado en su máquina local. Para obtener más información, consulte Installation.

  • Docker instalado en su máquina local. Para obtener más información, consulte Install and use Docker and Docker Compose.

  • Una lista de control de acceso (ACL) de virtual private cloud (VPC) configurada o el acceso a Internet habilitado para la instancia de Container Registry Enterprise Edition. Este tema utiliza acceso a Internet. Para obtener más información, consulte Configure internet access control.

  • La contraseña de su instancia de Container Registry Enterprise Edition. Para restablecer una contraseña olvidada, configure las credenciales de acceso. Para obtener más información, consulte Configure access credentials.

Paso 1: Asociar una imagen de contenedor con sus artefactos derivados mediante la Referrers API

La Referrers API, introducida en OCI v1.1.0, vincula artefactos derivados (SBOM, firmas y resultados de análisis de vulnerabilidades) directamente a una imagen de contenedor. Todos los artefactos asociados se pueden descubrir mediante un único grafo de relaciones, lo que simplifica la seguridad de la cadena de suministro y las auditorías de cumplimiento en comparación con los enfoques basados en etiquetas.

Los siguientes pasos generan el SBOM para golang:1.20, lo adjuntan a la imagen mediante oras attach y verifican la asociación con oras discover.

Si docker sbom no está disponible en su entorno, instale primero el componente sbom-cli-plugin.

Instalar y configurar el componente sbom-cli-plugin

Si no puede ejecutar el comando docker sbom en su entorno, realice los siguientes pasos para instalar y configurar el componente sbom-cli-plugin:

  1. Instale el componente sbom-cli-plugin.

    wget "https://github.com/docker/sbom-cli-plugin/releases/download/v0.6.1/sbom-cli-plugin_0.6.1_linux_amd64.tar.gz"
  2. Cree un directorio para el componente.

    mkdir -p /root/.docker/cli-plugins
  3. Extraiga el paquete TAR en el directorio.

    tar -zxvf sbom-cli-plugin_0.6.1_linux_amd64.tar.gz -C  /root/.docker/cli-plugins

Este ejemplo utiliza la imagen alojada en <Name of the Container Registry Enterprise Edition instance>-registry.cn-hangzhou.cr.aliyuncs.com/library/golang:1.20.

  1. Inicie sesión en la instancia de Container Registry Enterprise Edition.

    Después de iniciar sesión correctamente, se muestra Login Succeeded.

    docker login <Name of the Container Registry Enterprise Edition instance>-registry.cn-hangzhou.cr.aliyuncs.com
    Username: ****@test.com
    Password:
    Login Succeeded
  2. Genere el SBOM para la imagen de contenedor.

    docker sbom <Name of the Container Registry Enterprise Edition instance>-registry.cn-hangzhou.cr.aliyuncs.com/library/golang:1.20 --format spdx-json -o sbom.jsom

    Salida esperada:

    13

  3. Adjunte el SBOM a la imagen de contenedor.

     oras attach  --distribution-spec v1.1-referrers-api <Name of the Container Registry Enterprise Edition instance>-registry.cn-hangzhou.cr.aliyuncs.com/library/golang:1.20 sbom.jsom --artifact-type example/sbom

    Salida esperada:

    14

  4. Verifique la asociación entre la imagen de contenedor y el SBOM.

    oras discover  --distribution-spec v1.1-referrers-api <Name of the Container Registry Enterprise Edition instance>-registry.cn-hangzhou.cr.aliyuncs.com/library/golang:1.20

    Salida esperada:

    15

Paso 2: Distribuir una imagen de contenedor y sus artefactos derivados entre instancias

Container Registry Enterprise Edition permite distribuir imágenes de contenedor y sus artefactos derivados asociados entre instancias mediante herramientas como el cliente ORAS. El indicador -r en el comando oras cp copia de forma recursiva todos los referrers adjuntos a la imagen, de modo que el SBOM y cualquier otro artefacto asociado se transfieren en una sola operación.

Este ejemplo copia golang:1.20 y su SBOM asociado desde una instancia de origen en la región China (Hangzhou) hacia una instancia de destino en la región China (Beijing).

  1. Inicie sesión en la instancia de destino de Container Registry Enterprise Edition.

    Después de iniciar sesión correctamente, se muestra Login Succeeded.

    docker login <Name of the destination Container Registry Enterprise Edition instance>-registry.cn-beijing.cr.aliyuncs.com
    Username: ****@test.com
    Password:
    Login Succeeded
  2. Copie la imagen de contenedor y su SBOM asociado a la instancia de destino.

    $ oras cp -r --from-distribution-spec v1.1-referrers-api --to-distribution-spec v1.1-referrers-api <Name of the source Container Registry Enterprise Edition instance>-registry.cn-hangzhou.cr.aliyuncs.com/library/golang:1.20 <Name of the destination Container Registry Enterprise Edition instance>-registry.cn-beijing.cr.aliyuncs.com/library/golang:1.20

    Salida esperada:

    16

  3. Compruebe que el SBOM esté presente en la instancia de destino.

    oras discover  --distribution-spec v1.1-referrers-api <Name of the destination Container Registry Enterprise Edition instance>-registry.cn-beijing.cr.aliyuncs.com/library/golang:1.20

    Salida esperada:

    17