Membuat repositori standar

Halaman ini menjelaskan cara membuat repositori standar Artifact Registry.

Repositori standar adalah repositori untuk artefak pribadi Anda. Anda mengupload artefak ke dan mendownload artefak langsung dari repositori ini.

Setiap repositori dapat berisi artefak untuk satu format yang didukung.

Sebelum memulai

  1. Aktifkan Artifact Registry, termasuk mengaktifkan Artifact Registry API dan menginstal Google Cloud CLI.
  2. (Opsional) Konfigurasi default untuk perintah gcloud.
  3. Jika Anda memerlukan kunci enkripsi yang dikelola pelanggan (CMEK) untuk mengenkripsi konten repositori, buat dan aktifkan kunci di Cloud KMS untuk repositori.

Peran yang diperlukan

Untuk mendapatkan izin yang diperlukan guna membuat repositori, minta administrator Anda untuk memberi Anda peran IAM Administrator Artifact Registry (roles/artifactregistry.admin) di project Trusted Cloud by S3NS . Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.

Membuat repositori standar

Saat membuat repositori, Anda harus mengonfigurasi setelan berikut yang tidak dapat diubah setelah repositori dibuat:

  • Format artefak.
  • Mode repositori.

Artifact Registry menerapkan batasan kebijakan organisasi yang mewajibkan CMEK untuk mengenkripsi resource atau membatasi kunci Cloud KMS yang dapat digunakan untuk perlindungan CMEK.

Membuat repositori menggunakan konsol Trusted Cloud

  1. Buka halaman Repositories di konsol Trusted Cloud .

    Buka halaman Repositori

  2. Klik Create Repository.

  3. Tentukan nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.

  4. Pilih format repositori.

  5. Jika beberapa mode repositori tersedia, pilih Standar.

  6. Pilih lokasi untuk repositori. Untuk mengetahui informasi tentang jenis lokasi dan lokasi yang didukung, lihat Lokasi repositori

  7. Tambahkan deskripsi untuk repositori. Deskripsi membantu mengidentifikasi tujuan repositori dan jenis artefak yang ada di dalamnya.

    Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.

  8. Jika Anda ingin menggunakan label untuk mengatur repositori, klik Tambahkan Label dan masukkan pasangan nilai kunci untuk label. Anda dapat menambahkan, mengedit, atau menghapus label setelah membuat repositori.

  9. Di bagian Enkripsi, pilih mekanisme enkripsi untuk repositori.

    • Google Cloud-powered encryption key - Mengenkripsi konten repositori dengan Google Cloud-powered encryption key.
    • Kunci yang dikelola pelanggan - Enkripsi konten repositori dengan kunci yang Anda kontrol melalui Cloud Key Management Service. Untuk mengetahui petunjuk penyiapan kunci, lihat Menyiapkan CMEK untuk repositori.

    • Untuk repositori Docker, setelan Tag image yang tidak dapat diubah mengonfigurasi repositori Anda untuk menggunakan tag image yang selalu mengarah ke ringkasan image yang sama. Pengguna dengan peran administrator Artifact Registry dapat mengubah setelan ini setelah repositori dibuat.

      • Secara default, setelan ini dinonaktifkan. Tag gambar dapat berubah, yang berarti ringkasan gambar yang ditunjuk oleh tag dapat berubah.
      • Jika setelan ini diaktifkan, tag gambar tidak dapat diubah. Tag harus selalu menunjuk ke ringkasan gambar yang sama. Untuk mempelajari lebih lanjut tag image yang dapat diubah dan tidak dapat diubah, lihat Versi image container.
  10. Klik Buat.

Artifact Registry membuat repositori dan menambahkannya ke daftar repositori.

Setelah Anda membuat repositori:

  • Memberikan akses ke repositori.
  • Mengonfigurasi Docker dan klien pihak ketiga lainnya untuk mengautentikasi ke repositori.

Membuat repositori menggunakan Google Cloud CLI

Jalankan perintah untuk membuat repositori baru.

Apt

  gcloud artifacts repositories create REPOSITORY \
      --repository-format=apt \
      --location=LOCATION \
      --description="DESCRIPTION" \
      --kms-key=KMS-KEY \
      --async
  

Ganti kode berikut:

  • REPOSITORY: nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.
  • LOCATION: lokasi regional untuk repositori. Anda dapat menghapus flag ini jika Anda menetapkan default. Untuk melihat daftar lokasi yang didukung, jalankan perintah:
    gcloud artifacts locations list
  • DESCRIPTION: deskripsi repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.
  • KMS-KEY: jalur lengkap ke kunci enkripsi Cloud KMS, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan untuk mengenkripsi konten repositori. Jalur dalam format:
        projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY

    Ganti kode berikut:

    • KMS-PROJECT: project tempat kunci Anda disimpan.
    • KMS-LOCATION: lokasi kunci.
    • KEY-RING: nama key ring.
    • KEY: nama kunci.
  • --async: langsung ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.

Docker

  gcloud artifacts repositories create REPOSITORY \
      --repository-format=docker \
      --location=LOCATION \
      --description="DESCRIPTION" \
      --kms-key=KMS-KEY \
      --immutable-tags \
      --async \
      --disable-vulnerability-scanning

Ganti kode berikut:

  • REPOSITORY: nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.

    • LOCATION: lokasi regional untuk repositori. Anda dapat menghapus tanda ini jika Anda menetapkan lokasi default. Untuk melihat daftar lokasi yang didukung, jalankan perintah:

      gcloud artifacts locations list
    • DESCRIPTION: deskripsi repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.
    • KMS-KEY: jalur lengkap ke kunci enkripsi Cloud KMS, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan untuk mengenkripsi konten repositori. Jalur dalam format:

      projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY

      Ganti kode berikut:

      • KMS-PROJECT: project tempat kunci Anda disimpan.
      • KMS-LOCATION: lokasi kunci.
      • KEY-RING: nama key ring.
      • KEY: nama kunci.
    • --immutable-tags adalah tanda opsional yang mengonfigurasi repositori Anda untuk menggunakan tag yang selalu mengarah ke ringkasan image yang sama.

      Secara default, saat tanda --immutable-tags tidak diteruskan, tag dapat dipindahkan ke ringkasan gambar lain. Untuk mempelajari lebih lanjut tag image yang tidak dapat diubah dan dapat diubah, lihat Versi image container.

    • --async segera ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.

Enak

  gcloud artifacts repositories create REPOSITORY \
      --repository-format=yum \
      --location=LOCATION \
      --description="DESCRIPTION" \
      --kms-key=KMS-KEY \
      --async
  

Ganti kode berikut:

  • REPOSITORY: nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.
  • LOCATION: lokasi regional untuk repositori. Anda dapat menghapus flag ini jika Anda menetapkan default. Untuk melihat daftar lokasi yang didukung, jalankan perintah:
    gcloud artifacts locations list
  • DESCRIPTION: deskripsi repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.
  • KMS-KEY: jalur lengkap ke kunci enkripsi Cloud KMS, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan untuk mengenkripsi konten repositori. Jalur dalam format:
        projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY

    Ganti kode berikut:

    • KMS-PROJECT: project tempat kunci Anda disimpan.
    • KMS-LOCATION: lokasi kunci.
    • KEY-RING: nama key ring.
    • KEY: nama kunci.
  • --async: segera ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.

Artifact Registry akan membuat repositori Anda. Jalankan perintah berikut untuk melihat deskripsi repositori:

gcloud artifacts repositories describe REPOSITORY \
    --location=LOCATION

Setelah Anda membuat repositori:

  • Memberikan akses ke repositori.
  • Mengonfigurasi Docker dan klien pihak ketiga lainnya untuk mengautentikasi ke repositori.

Membuat repositori menggunakan Terraform

Gunakan resource google_artifact_registry_repository untuk membuat repositori. Diperlukan versi terraform-provider-google 5.0.0 atau yang lebih baru.

Jika Anda baru menggunakan Terraform untuk Trusted Cloud by S3NS, lihat halaman Mulai - Trusted Cloud by S3NS di situs HashiCorp.

Contoh berikut menentukan penyedia dan repositori dengan nama resource Terraform my-repo.

Apt

  provider "google" {
      project = "PROJECT-ID"
  }
resource "google_artifact_registry_repository" "my-repo" { location = "LOCATION" repository_id = "REPOSITORY" description = "DESCRIPTION" format = "apt" kms_key_name = "KEY" }

Ganti kode berikut:

  • PROJECT-ID adalah Trusted Cloud project ID.
  • LOCATION adalah lokasi repositori.
  • REPOSITORY adalah nama repositori.
  • DESCRIPTION adalah deskripsi opsional untuk repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.
  • KEYadalah nama kunci Cloud Key Management Service, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi. Hapus argumen ini untuk menggunakan setelan default, yaitu kunci enkripsi yang dikelola Google.

Docker

  provider "google" {
      project = "PROJECT-ID"
  }
resource "google_artifact_registry_repository" "my-repo" { location = "LOCATION" repository_id = "REPOSITORY" description = "DESCRIPTION" format = "docker" kms_key_name = "KEY" }

Ganti kode berikut:

  • PROJECT-ID adalah Trusted Cloud project ID.
  • LOCATION adalah lokasi repositori.
  • REPOSITORY adalah nama repositori.
  • DESCRIPTION adalah deskripsi opsional untuk repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.
  • KEYadalah nama kunci Cloud Key Management Service, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi. Hapus argumen ini untuk menggunakan setelan default, yaitu kunci enkripsi yang dikelola Google.

Enak

  provider "google" {
      project = "PROJECT-ID"
  }
resource "google_artifact_registry_repository" "my-repo" { location = "LOCATION" repository_id = "REPOSITORY" description = "DESCRIPTION" format = "yum" kms_key_name = "KEY" }

Ganti kode berikut:

  • PROJECT-ID adalah Trusted Cloud project ID.
  • LOCATION adalah lokasi repositori.
  • REPOSITORY adalah nama repositori.
  • DESCRIPTION adalah deskripsi opsional untuk repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.
  • KEYadalah nama kunci Cloud Key Management Service, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi. Hapus argumen ini untuk menggunakan setelan default, yaitu kunci enkripsi yang dikelola Google.

Artifact Registry akan membuat repositori Anda. Jalankan perintah berikut untuk melihat deskripsi repositori:

gcloud artifacts repositories describe REPOSITORY \
    --location=LOCATION

Setelah Anda membuat repositori:

  • Memberikan akses ke repositori.
  • Mengonfigurasi Docker dan klien pihak ketiga lainnya untuk mengautentikasi ke repositori.

Mengedit deskripsi repositori

Anda dapat mengubah deskripsi repositori dari Trusted Cloud konsol atau gcloud CLI.

Konsol

  1. Buka halaman Repositories di konsol Trusted Cloud .

    Buka halaman Repositori

  2. Di daftar repositori, pilih repositori, lalu klik Edit Repository.

  3. Edit deskripsi repositori, lalu klik Simpan.

gcloud

Untuk memperbarui deskripsi repositori, jalankan perintah:

gcloud artifacts repositories update REPOSITORY \
    --project=PROJECT \
    --location=LOCATION \
    --description="DESCRIPTION"

Ganti kode berikut:

  • REPOSITORY: nama repositori. Jika Anda mengonfigurasi repositori default, Anda dapat menghapus tanda ini untuk menggunakan default.
  • PROJECT: ID project. Trusted Cloud by S3NSJika flag ini dihilangkan, project saat ini atau default akan digunakan.
  • LOCATION adalah lokasi regional repositori. Gunakan tanda ini untuk melihat repositori di lokasi tertentu. Jika Anda mengonfigurasi lokasi default, Anda dapat menghilangkan tanda ini untuk menggunakan default.
  • DESCRIPTION: deskripsi untuk repositori.

Langkah berikutnya