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
ataudevelopment
. 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 tagv1.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.