Mengelola diagram Helm

Halaman ini menjelaskan cara mengelola diagram Helm 3 yang disimpan sebagai image container OCI, termasuk mendorong (mengupload), menarik (mendownload), mencantumkan, memberi tag, dan menghapus diagram.

Sebelum memulai

  1. Jika repositori target tidak ada, buat repositori baru. Pilih Docker sebagai format repositori.
  2. Pastikan Anda memiliki izin yang diperlukan untuk repositori.
  3. (Opsional) Mengonfigurasi setelan default untuk perintah Google Cloud CLI.
  4. Menginstal Helm 3.8.0 atau yang lebih baru. Pada Helm versi sebelumnya, dukungan untuk diagram dalam format OCI adalah fitur eksperimental.

    Jalankan helm version untuk memverifikasi versi Anda.

  5. Mengonfigurasi Helm untuk melakukan autentikasi dengan Artifact Registry.

Membuat atau mendapatkan bagan

Dokumentasi ini berfokus pada pengelolaan gambar diagram dan mengasumsikan bahwa Anda memiliki diagram yang sudah ada atau terbiasa membuat diagram. Untuk mempelajari lebih lanjut cara membuat diagram atau mendapatkan diagram yang tersedia untuk publik di Artifact Hub, lihat informasi berikut dalam dokumentasi Helm.

Mengemas diagram

Sebelum dapat mengirim diagram ke Artifact Registry, Anda harus mengemasnya sebagai arsip diagram.

  1. Ubah ke direktori yang berisi diagram Anda.

  2. Kemas diagram.

    helm package CHART-PATH
    

    Ganti CHART-PATH dengan jalur ke direktori yang berisi file Chart.yaml Anda.

Helm menggunakan nama dan versi diagram untuk nama file arsip. Misalnya, jika Anda memiliki diagram dengan nama my-chart dan nomor versi 0.1.0, nama paketnya adalah my-chart-0.1.0.tgz.

Sekarang Anda dapat mengirim diagram ke Artifact Registry.

Mengirim diagram

Setelah mengemas diagram, Anda dapat mengirimkannya ke Artifact Registry.

Untuk mengirim diagram, jalankan perintah berikut:

helm push my-chart-0.1.0.tgz oci://LOCATION-docker.pkg.dev/PROJECT/REPOSITORY

Ganti nilai berikut:

  • LOCATION adalah lokasi regional atau multi-regional dari repositori.
  • PROJECT adalah ID project Google Cloud Anda. Jika project ID Anda berisi titik dua (:), lihat Project cakupan domain.
  • REPOSITORY adalah nama repositori.

Helm menggunakan informasi dari Chart.yaml untuk nama dan tag image container OCI. Perhatikan contoh perintah berikut:

helm push my-chart-0.1.0.tgz oci://us-east4-docker.pkg.dev/my-project/my-repo

Helm mengupload arsip diagram sebagai gambar my-chart dengan tag 0.1.0.

Untuk memastikan bahwa operasi push berhasil, cantumkan image di repositori.

gcloud artifacts docker images list LOCATION-docker.pkg.dev/PROJECT/REPOSITORY

Menarik diagram

Untuk menarik diagram:

  1. Jalankan perintah berikut untuk mengambil arsip diagram:

    helm pull oci://LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE \
        --version VERSION
    

    Jika Anda ingin mengambil arsip diagram dan mengekstrak isinya, tambahkan flag --untar.

    helm pull oci://LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE \
        --version VERSION \
        --untar
    

    Ganti nilai berikut:

    • LOCATION adalah lokasi regional atau multi-regional dari repositori.
    • PROJECT adalah ID project Google Cloud Anda. Jika project ID Anda berisi titik dua (:), lihat Project cakupan domain.
    • REPOSITORY adalah nama repositori tempat gambar disimpan.
    • IMAGE adalah nama image di repositori.
    • VERSION adalah versi semantik diagram. Flag ini wajib ada. Helm tidak mendukung penarikan diagram menggunakan tag.

Menginstal diagram

Instal diagram yang disimpan di Artifact Registry dengan perintah helm install.

helm install RELEASE \
    oci://LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE \
    --version VERSION

Contoh berikut menginstal rilis bernama release1 menggunakan versi 0.1.0 diagram us-east4-docker.pkg.dev/nyap-test/helm-repo/my-chart:

helm install release1 oci://us-east4-docker.pkg.dev/nyap-test/helm-repo/my-chart --version 0.1.0

Diagram listingan

Anda dapat menampilkan daftar diagram menggunakan Konsol Google Cloud atau command line. Jika Anda menyimpan image dan diagram container di repositori Docker yang sama, kedua jenis artefak akan muncul dalam daftar.

Konsol

Untuk melihat image di repositori:

  1. Buka halaman Repositories di Konsol Google Cloud.

    Buka halaman Repositori

  2. Klik repositori dengan image container.

  3. Klik gambar untuk melihat versinya.

gcloud

Untuk mencantumkan semua image dalam project, repositori, dan lokasi default saat nilai default dikonfigurasi:

gcloud artifacts docker images list

Untuk menampilkan daftar image dalam repositori di lokasi tertentu, jalankan perintah:

gcloud artifacts docker images list LOCATION-docker.pkg.dev/PROJECT/REPOSITORY

Untuk menampilkan semua ringkasan dan tag untuk gambar tertentu, jalankan perintah:

gcloud artifacts docker images list LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE \
--include-tags

Ganti nilai berikut:

  • LOCATION adalah lokasi regional atau multi-regional dari repositori.
  • PROJECT adalah project ID Google Cloud Anda. Jika project ID Anda berisi titik dua (:), lihat Project cakupan domain.
  • REPOSITORY adalah nama repositori tempat gambar disimpan.
  • IMAGE adalah nama image di repositori.
  • --include-tags menampilkan semua versi gambar, termasuk ringkasan dan tag. Jika tanda ini dihilangkan, daftar yang ditampilkan hanya menyertakan image container tingkat atas.

Misalnya, perhatikan gambar dengan karakteristik berikut:

  • Lokasi repositori: us
  • Nama repositori: my-repo
  • Project ID: my-project
  • Nama image: my-image

Nama lengkap repositori adalah:

us-docker.pkg.dev/my-project/my-repo

Nama gambar lengkap adalah:

us-docker.pkg.dev/my-project/my-repo/my-image

Untuk mengetahui detail tentang format nama image, lihat Nama repositori dan image.

Membuat listingan file

Anda dapat mencantumkan file dalam repositori, file dalam semua versi image container tertentu, atau file dalam versi image tertentu.

Untuk semua perintah berikut, Anda dapat menetapkan jumlah file maksimum yang akan ditampilkan dengan menambahkan flag --limit ke perintah.

Untuk mencantumkan semua file dalam project, repositori, dan lokasi default saat nilai default dikonfigurasi:

gcloud artifacts files list

Untuk menampilkan daftar file dalam project, repositori, dan lokasi yang ditentukan, jalankan perintah:

gcloud artifacts files list \
    --project=PROJECT \
    --repository=REPOSITORY \
    --location=LOCATION

Untuk menampilkan daftar file bagi semua versi image container tertentu:

gcloud artifacts files list \
    --project=PROJECT \
    --repository=REPOSITORY \
    --location=LOCATION \
    --package=PACKAGE

Untuk mencantumkan file untuk versi image container tertentu:

gcloud artifacts files list \
    --project=PROJECT \
    --repository=REPOSITORY \
    --location=LOCATION \
    --package=PACKAGE \
    --version=VERSION
Untuk menampilkan daftar file untuk tag tertentu:

gcloud artifacts files list \
    --project=PROJECT \
    --repository=REPOSITORY \
    --location=LOCATION \
    --package=PACKAGE \
    --tag=TAG

Ganti nilai berikut:

  • LOCATION: lokasi regional atau multi-regional repositori.
  • PROJECT: project ID Google Cloud Anda. Jika project ID Anda berisi titik dua (:), lihat Project cakupan domain.
  • REPOSITORY: nama repositori tempat image disimpan.
  • PACKAGE: nama image.
  • VERSION: ringkasan gambar, string yang dimulai dengan sha256:.
  • TAG: tag yang terkait dengan image penampung.

Menghapus beberapa gambar

Dalam repositori Artifact Registry, Anda dapat menghapus seluruh image container atau menghapus versi image tertentu yang terkait dengan tag atau ringkasan. Setelah menghapus gambar, Anda tidak dapat mengurungkan tindakannya.

Untuk menghapus image yang disimpan di Artifact Registry:

Konsol

  1. Buka halaman Repositories di Konsol Google Cloud.

    Buka halaman Repositori

  2. Klik nama image untuk melihat versi image tersebut.

  3. Pilih versi yang ingin Anda hapus.

  4. Klik HAPUS.

  5. Di kotak dialog konfirmasi, klik HAPUS.

gcloud

Untuk menghapus gambar dan semua tagnya, jalankan perintah:

gcloud artifacts docker images delete LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE --delete-tags

Untuk menghapus versi image tertentu, gunakan salah satu perintah berikut.

gcloud artifacts docker images delete LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE:TAG [--delete-tags]

atau

gcloud artifacts docker images delete LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE@IMAGE-DIGEST [--delete-tags]

Dari mana

  • LOCATION adalah lokasi regional atau multi-regional dari repositori.
  • PROJECT adalah project ID Google Cloud Anda. Jika project ID Anda berisi titik dua (:), lihat Project cakupan domain.
  • REPOSITORY adalah nama repositori tempat gambar disimpan.
  • IMAGE adalah nama image di repositori.
  • TAG adalah tag untuk versi yang ingin Anda hapus. Jika beberapa tag dikaitkan dengan versi gambar yang sama, Anda harus menyertakan --delete-tags untuk menghapus versi image tanpa menghapus tag terlebih dahulu.
  • IMAGE-DIGEST adalah nilai hash sha256 untuk versi yang ingin Anda hapus. Jika tag terkait dengan ringkasan gambar, Anda harus menyertakan --delete-tags untuk menghapus versi gambar tanpa menghapus tag terlebih dahulu.
  • --delete-tags menghapus semua tag yang diterapkan ke versi gambar. Flag ini memungkinkan Anda memaksa penghapusan versi image jika:
    • Anda menentukan tag, tetapi ada tag lain yang terkait dengan versi image.
    • Anda menentukan ringkasan gambar yang memiliki setidaknya satu tag.

Langkah selanjutnya