Nama repositori dan image

Artifact Registry menggunakan konvensi penamaan untuk mengidentifikasi repositori dan image saat Anda menggunakan perintah API, gcloud, dan docker untuk berinteraksi dengan repositori.

Repositori Docker

Nama lengkap untuk repositori Docker dalam format berikut:

LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY

dengan:

  • LOCATION adalah lokasi regional atau multi-regional dari repositori.

  • PROJECT adalah project ID Konsol Google Cloud Anda. Jika project ID berisi titik dua (:) dan Anda bekerja dengan repositori Docker, lihat Project dengan cakupan domain.

  • REPOSITORY adalah nama repositori.

Misalnya, perhatikan gambar dengan karakteristik berikut:

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

Repositori ditentukan sebagai:

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

Nama image container

Nama lengkap untuk image container adalah salah satu format berikut:

LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY/IMAGE

atau

LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY/IMAGE:TAG

atau

LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY/IMAGE@IMAGE-DIGEST

dengan:

  • LOCATION adalah lokasi regional atau multi-regional dari repositori.
  • PROJECT adalah project ID Konsol 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 gambar yang ingin Anda tarik.
  • IMAGE-DIGEST adalah nilai hash sha256 dari konten gambar. Di konsol Google Cloud, klik gambar tertentu untuk melihat metadatanya. Ringkasan tercantum sebagai Ringkasan gambar.

    Jika Anda tidak menentukan tag atau ringkasan, Artifact Registry akan mencari image dengan tag default latest. Lihat Versi image container untuk informasi tentang versi.

Misalnya, perhatikan gambar dengan karakteristik berikut:

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

Versi image yang diberi tag dengan staging ini ditetapkan sebagai:

us-docker.pkg.dev/my-project/my-repo/test:staging

Versi image container

Repositori dapat berisi banyak image container, dan image ini dapat memiliki versi yang berbeda. Untuk mengidentifikasi versi gambar tertentu, Anda dapat menentukan ringkasan atau tag gambar.

Ringkasan
Ringkasan gambar adalah hash indeks gambar atau manifes gambar yang dihasilkan secara otomatis. Setiap ringkasan gambar adalah ID unik untuk versi image dan tidak dapat diubah. Ringkasan adalah nilai hash sha256 dari konten gambar.
Tag

Tag gambar adalah label dan sering kali berupa string yang dapat dibaca manusia, seperti v1.1 atau development. Tag hanya dapat mengarah ke satu versi gambar saja. Di Artifact Registry, Anda dapat mengonfigurasi repositori Docker untuk mengizinkan tag image yang dapat berubah atau menerapkan tag image yang tidak dapat diubah.

  • Dapat diubah: Tag hanya mengarah ke satu versi gambar, tetapi ringkasan khusus yang dijadikan referensinya dapat berubah.

    Pendekatan umumnya adalah memberi tag pada image dengan ID versi, seperti v1.1 pada waktu build. Saat build mengirim beberapa versi image ke registry dengan tag v1.1 yang sama, tag tersebut akan mereferensikan ringkasan versi terakhir yang dikirim ke registry. Meskipun tag gambar yang dapat berubah memberikan cara yang mudah untuk memberi label versi, tag tersebut juga dapat dimanipulasi oleh pihak yang tidak bertanggung jawab untuk mengaitkan tag dengan versi gambar yang berbahaya.

  • Tidak dapat diubah: Di repositori, tag selalu mengarah ke ringkasan gambar yang sama. Jika repositori Artifact Registry dikonfigurasi untuk tag image yang tidak dapat diubah, tindakan berikut tidak akan diizinkan:

    • Hapus gambar yang diberi tag. Menghapus gambar yang tidak diberi tag tetap diizinkan.
    • Menghapus tag dari gambar.
    • Kirim image dengan tag yang sudah digunakan oleh versi image lain dalam repositori.

Misalnya, perhatikan gambar dengan karakteristik berikut:

  • Lokasi repositori: us
  • Nama repositori: my-repo
  • Project ID: my-project
  • Nama image: test
  • Tag: staging
  • Ringkasan: sha256:4d11e24ba8a615cc85a535daa17b47d3c0219f7eeb2b8208896704ad7f88ae2d

Untuk mengidentifikasi gambar dengan tag, tambahkan :staging ke nama gambar:

us-docker.pkg.dev/my-project/my-repo/test:staging

Untuk mengidentifikasinya dengan ringkasan, tambahkan @ ke nama gambar, diikuti dengan ringkasan:

us-docker.pkg.dev/my-project/my-repo/test@sha256:4d11e24ba8a615cc85a535daa17b47d3c0219f7eeb2b8208896704ad7f88ae2d

Jika project ID Anda berisi titik dua (:), lihat Project cakupan domain.

Di konsol, pada layar Gambar, kolom Tag mencantumkan tag gambar. Klik versi gambar untuk melihat metadata, termasuk Ringkasan gambar.

Lihat bagian Memberi Tag pada Gambar untuk mengetahui informasi selengkapnya tentang pemberian tag.

Project cakupan domain

Jika project Anda dicakupkan ke domain, project ID akan menyertakan nama domain, diikuti dengan titik dua (:). Karena cara Docker memperlakukan titik dua, Anda harus mengganti karakter titik dua dengan garis miring saat menentukan ringkasan image di Artifact Registry. Identifikasi gambar dalam jenis project ini menggunakan format berikut:

LOCATION-docker.pkg.dev/DOMAIN/PROJECT-ID/REPOSITORY/IMAGE@IMAGE-DIGEST

Misalnya, project dengan ID example.com:my-project dapat memiliki gambar berikut:

us-docker.pkg.dev/example.com/my-project/my-repo/image-name

Nama repositori sebagai URL

Untuk mengakses repositori atau artefak dalam repositori di Konsol Google Cloud, tambahkan https:// ke nama lengkapnya.

Misalnya, untuk melihat repositori us-maven.pkg.dev/my-project/my-repo, gunakan URL berikut:

https://us-maven.pkg.dev/my-project/my-repo

Untuk melihat gambar us-docker.pkg.dev/example.com/my-project/my-repo/my-image, gunakan URL berikut:

https://us-docker.pkg.dev/example.com/my-project/my-repo/my-image

Setiap pengguna terautentikasi yang memiliki izin untuk mengakses repositori dapat menggunakan link ini.