全部产品
Search
文档中心

Container Registry:Menggunakan Spesifikasi OCI v1.1.0 untuk Mengelola dan Mengaitkan Gambar Kontainer dan Artefak Turunannya

更新时间:Jul 02, 2025

Mulai April 2024, instance baru Container Registry Enterprise Edition mendukung Open Container Initiative (OCI) Image and Distribution Specification V1.1.0, termasuk dukungan untuk Reference Types. Dengan ini, Anda dapat menyimpan dan mendistribusikan gambar kontainer serta mengelola artefak OCI terkait seperti tanda tangan gambar dan Software Bills of Materials (SBOMs). Topik ini menjelaskan cara menggunakan fitur OCI V1.1.0 di Container Registry.

Prasyarat

  • Klien OCI Registry As Storage (ORAS) telah diinstal pada mesin lokal Anda. Untuk informasi lebih lanjut, lihat Instalasi.

  • Docker telah diinstal pada mesin lokal Anda. Untuk informasi lebih lanjut, lihat Instal Docker.

  • Daftar kontrol akses (ACL) virtual private cloud (VPC) dikonfigurasi atau akses Internet diaktifkan untuk instance Container Registry Enterprise Edition. Dalam topik ini, akses Internet diaktifkan. Untuk informasi lebih lanjut, lihat Konfigurasikan Akses Melalui Internet.

  • Kata sandi logon untuk instance Container Registry Enterprise Edition diperoleh. Jika Anda lupa kata sandi, Anda dapat menyetel ulang dengan mengonfigurasi kredensial akses. Untuk informasi lebih lanjut, lihat Konfigurasikan Kredensial Akses untuk Instance Container Registry Enterprise Edition.

Langkah 1: Gunakan Referrers API untuk mengaitkan gambar kontainer dengan artefak turunannya

Referrers API adalah kemampuan yang diusulkan dalam OCI V1.1.0 dan bertujuan untuk mengaitkan gambar kontainer dengan artefak turunannya seperti SBOMs, tanda tangan, dan hasil pemindaian kerentanan. Referrers API membantu melacak sumber artefak perangkat lunak secara efektif, meningkatkan pengelolaan keamanan dan kepatuhan gambar serta peninjauannya. Contoh berikut menunjukkan cara menggunakan Referrers API untuk menghasilkan SBOM dari gambar kontainer dan mengaitkan gambar tersebut dengan SBOM.

Jika Anda tidak dapat menjalankan perintah docker sbom di lingkungan Anda, instal dan konfigurasikan komponen sbom-cli-plugin.

Instal dan Konfigurasikan Komponen sbom-cli-plugin

Jika Anda tidak dapat menjalankan perintah docker sbom, ikuti langkah-langkah berikut untuk menginstal dan mengonfigurasi komponen sbom-cli-plugin:

  1. Instal komponen 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. Buat direktori komponen.

    mkdir -p /root/.docker/cli-plugins
  3. Ekstrak paket TAR ke direktori yang dibuat.

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

Contoh berikut menunjukkan cara menggunakan Referrers API untuk mengaitkan gambar kontainer yang dihosting di <Nama instance Container Registry Enterprise Edition>-registry.cn-hangzhou.cr.aliyuncs.com/library/golang:1.20 dengan SBOM dari gambar tersebut:

  1. Tentukan nama domain instance Container Registry Enterprise Edition dan masukkan nama pengguna serta kata sandi logon Anda.

    Setelah berhasil masuk ke instance Container Registry Enterprise Edition, pesan Login Succeeded akan ditampilkan.

    docker login <Nama instance Container Registry Enterprise Edition>-registry.cn-hangzhou.cr.aliyuncs.com
    Username: ****@test.com
    Password:
    Login Succeeded
  2. Jalankan perintah berikut untuk menghasilkan SBOM dari gambar kontainer:

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

    Output yang diharapkan:

    13

  3. Jalankan perintah berikut untuk mengaitkan gambar kontainer dengan SBOM:

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

    Output yang diharapkan:

    14

  4. Jalankan perintah berikut untuk melihat hubungan asosiasi antara gambar kontainer dan SBOM:

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

    Output yang diharapkan:

    15

Langkah 2: Mendistribusikan gambar kontainer dan artefak turunan terkaitnya di seluruh instance Container Registry Enterprise Edition

Container Registry Enterprise Edition memungkinkan Anda menggunakan alat seperti klien ORAS untuk mendistribusikan gambar kontainer dan artefak turunan terkaitnya di seluruh instance. Contoh ini menunjukkan cara menyalin gambar kontainer dan SBOM terkaitnya di seluruh instance.

Untuk mendistribusikan gambar kontainer yang dihosting di <Nama instance Container Registry Enterprise Edition sumber>-registry.cn-hangzhou.cr.aliyuncs.com/library/golang:1.20 dan SBOM terkaitnya ke repositori gambar di domain <Nama instance Container Registry Enterprise Edition tujuan>-registry.cn-beijing.cr.aliyuncs.com, Anda harus masuk ke repositori gambar instance tujuan.

  1. Tentukan nama domain instance Container Registry Enterprise Edition tujuan dan masukkan nama pengguna serta kata sandi logon Anda.

    Setelah berhasil masuk ke instance tujuan, pesan Login Succeeded akan ditampilkan.

    docker login <Nama instance Container Registry Enterprise Edition tujuan>-registry.cn-beijing.cr.aliyuncs.com
    Username: ****@test.com
    Password:
    Login Succeeded
  2. Jalankan perintah berikut untuk mendistribusikan gambar kontainer dan SBOM terkaitnya ke repositori gambar instance tujuan:

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

    Output yang diharapkan:

    16

  3. Jalankan perintah berikut untuk memverifikasi bahwa SBOM didistribusikan ke repositori gambar instance tujuan:

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

    Output yang diharapkan:

    17