Menyimpan diagram Helm 3 sebagai image container OCI memungkinkan Anda mengelolanya dengan cara yang sama seperti image Docker di Artifact Registry. Anda dapat mengupload (push), mendownload (pull), mencantumkan, memberi tag, dan menghapus diagram untuk mengelola siklus prosesnya di seluruh repositori Anda.
Sebelum memulai
- Jika repositori target tidak ada, buat repositori baru. Pilih Docker sebagai format repositori.
- Pastikan Anda memiliki izin yang diperlukan untuk repositori.
- (Opsional) Konfigurasikan setelan default untuk perintah Google Cloud CLI.
Instal Helm 3.8.0 atau yang lebih baru. Dalam versi Helm sebelumnya, dukungan untuk chart dalam format OCI adalah fitur eksperimental.
Jalankan
helm versionuntuk memverifikasi versi Anda.Konfigurasi Helm untuk melakukan autentikasi dengan Artifact Registry.
Membuat atau mendapatkan diagram
Dokumentasi ini berfokus pada pengelolaan gambar diagram dan mengasumsikan bahwa Anda sudah memiliki diagram atau sudah memahami cara membuat diagram. Untuk mempelajari lebih lanjut cara membuat diagram atau mendapatkan diagram yang tersedia secara publik di Artifact Hub, lihat informasi berikut dalam dokumentasi Helm.
- Menggunakan Helm menjelaskan cara mendapatkan chart dari Artifact Hub publik dan menyesuaikan chart sebelum menginstalnya.
- Diagram menjelaskan diagram dan cara membuat diagram.
- Panduan Praktik Terbaik Chart menjelaskan konvensi dan praktik terbaik.
Mengemas diagram
Sebelum dapat mengirim diagram ke Artifact Registry, Anda harus memaketkannya sebagai arsip diagram.
Ubah ke direktori yang berisi diagram Anda.
Memaketkan diagram.
helm package CHART-PATHGanti CHART-PATH dengan jalur ke direktori yang berisi file
Chart.yamlAnda.
Helm menggunakan nama dan versi chart 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.
Mendorong diagram
Setelah memaketkan 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 repositori.
- PROJECT adalah Google Cloud project ID 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-west1-docker.pkg.dev/my-project/my-repo
Helm mengupload arsip diagram sebagai image my-chart dengan tag 0.1.0.
Untuk memverifikasi bahwa operasi push berhasil, cantumkan image di repositori.
gcloud artifacts docker images list LOCATION-docker.pkg.dev/PROJECT/REPOSITORY
Menarik diagram
Untuk mengambil diagram:
Jalankan perintah berikut untuk mengambil arsip diagram:
helm pull oci://LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE \ --version VERSIONJika Anda ingin mengambil arsip diagram dan mengekstrak kontennya, tambahkan flag
--untar.helm pull oci://LOCATION-docker.pkg.dev/PROJECT/REPOSITORY/IMAGE \ --version VERSION \ --untarGanti nilai berikut:
- LOCATION adalah lokasi regional atau multi-regional repositori.
- PROJECT adalah Google Cloud project ID Anda.
Jika project ID Anda berisi titik dua (
:), lihat Project cakupan domain. - REPOSITORY adalah nama repositori tempat image disimpan.
- IMAGE adalah nama image di repositori.
- VERSION adalah versi semantik diagram. Flag ini wajib diisi. Helm tidak mendukung pengambilan 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
dari chart us-west1-docker.pkg.dev/nyap-test/helm-repo/my-chart:
helm install release1 oci://us-west1-docker.pkg.dev/nyap-test/helm-repo/my-chart --version 0.1.0
Diagram listingan
Anda dapat mencantumkan diagram menggunakan Google Cloud console atau command line. Jika Anda menyimpan image container dan diagram di repositori Docker yang sama, kedua jenis artefak akan muncul dalam daftar.
Konsol
Untuk melihat image di repositori:
Buka halaman Repositori di Google Cloud konsol.
Klik repositori yang berisi image container.
Klik image untuk melihat versinya.
gcloud
Untuk mencantumkan semua image dalam project, repositori, dan lokasi default saat nilai default dikonfigurasi:
gcloud artifacts docker images list
Untuk mencantumkan 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 image 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 repositori.
- PROJECT adalah Google Cloud project ID Anda. Jika project ID Anda berisi titik dua (
:), lihat Project cakupan domain. - REPOSITORY adalah nama repositori tempat image disimpan.
- IMAGE adalah nama image di repositori.
--include-tagsmenampilkan semua versi image, termasuk ringkasan dan tag. Jika flag ini dihilangkan, daftar yang ditampilkan hanya menyertakan image container level teratas.
Misalnya, pertimbangkan gambar dengan karakteristik berikut:
- Lokasi repositori:
us-west1 - Nama repositori:
my-repo - Project ID:
my-project - Nama image:
my-image
Nama lengkap repositori adalah:
us-west1-docker.pkg.dev/my-project/my-repo
Nama lengkap image adalah:
us-west1-docker.pkg.dev/my-project/my-repo/my-image
Untuk mengetahui detail tentang format nama image, lihat Nama repositori dan image.
Menyiapkan daftar file
Anda dapat mencantumkan file dalam repositori, file di semua versi image container yang ditentukan, atau file dalam versi image tertentu.
Untuk semua perintah berikut, Anda dapat menetapkan jumlah maksimum file 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 mencantumkan file dalam project, repositori, dan lokasi yang ditentukan, jalankan perintah:
gcloud artifacts files list \
--project=PROJECT \
--repository=REPOSITORY \
--location=LOCATION
Untuk mencantumkan file untuk 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
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 image, string yang diawali dengansha256:.TAG: tag yang terkait dengan image container.
Menghapus beberapa gambar
Di 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 tindakan tersebut.
Untuk menghapus image yang disimpan di Artifact Registry:
Konsol
Buka halaman Repositori di Google Cloud konsol.
Klik nama image untuk melihat versi image tersebut.
Pilih versi yang ingin Anda hapus.
Klik DELETE.
Pada dialog konfirmasi, klik DELETE.
gcloud
Untuk menghapus image dan semua tag-nya, 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]
Di mana
- LOCATION adalah lokasi regional atau multi-regional repositori.
- PROJECT adalah Google Cloud project ID Anda.
Jika project ID Anda berisi titik dua (
:), lihat Project cakupan domain. - REPOSITORY adalah nama repositori tempat image disimpan.
- IMAGE adalah nama image di repositori.
- TAG adalah tag untuk versi yang ingin Anda hapus. Jika beberapa tag dikaitkan dengan versi image yang sama, Anda harus menyertakan
--delete-tagsuntuk menghapus versi image tanpa menghapus tag terlebih dahulu. - IMAGE-DIGEST adalah nilai hash sha256 untuk versi yang ingin Anda hapus. Jika tag dikaitkan dengan ringkasan image, Anda harus menyertakan
--delete-tagsuntuk menghapus versi image tanpa menghapus tag terlebih dahulu. --delete-tagsmenghapus semua tag yang diterapkan ke versi foto. Flag ini memungkinkan Anda memaksa penghapusan versi image saat:- Anda menentukan tag, tetapi ada tag lain yang terkait dengan versi image.
- Anda menentukan ringkasan image yang memiliki setidaknya satu tag.
Langkah berikutnya
- Pelajari cara mengelola image Docker.
- Download file satu per satu dari repositori Anda tanpa menggunakan perintah Helm.