יצירת מאגרי מידע רגילים

מאגרים רגילים הם מאגרים של ארטיפקטים פרטיים. אתם מעלים ארטיפקטים למאגרי הארטיפקטים האלה ומורידים מהם ארטיפקטים ישירות.

בדף הזה נסביר איך ליצור מאגרי מידע רגילים ב-Artifact Registry.

לפני שמתחילים

  1. מפעילים את Artifact Registry, כולל הפעלת Artifact Registry API והתקנת Google Cloud CLI.
  2. (אופציונלי) הגדרת ברירות מחדל לפקודות gcloud.
  3. אם אתם רוצים להשתמש במפתחות הצפנה בניהול הלקוח (CMEK) כדי להצפין את התוכן במאגר, אתם צריכים ליצור ולהפעיל מפתח ב-Cloud KMS עבור המאגר.

התפקידים הנדרשים

כדי לקבל את ההרשאות שנדרשות ליצירת מאגרי מידע, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM‏ Artifact Registry Administrator (אדמין של Artifact Registry) ‏(roles/artifactregistry.admin) בפרויקט Cloud de Confiance by S3NS . להסבר על מתן תפקידים, קראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.

יצירת מאגר רגיל

כשיוצרים מאגר, צריך להגדיר את ההגדרות הבאות שלא ניתן לשנות אחרי יצירת המאגר:

  • פורמט של פריט מידע שנוצר בתהליך פיתוח (Artifact).
  • מצב מאגר.

ב-Artifact Registry נאכפים אילוצים על מדיניות הארגון שמחייבים שימוש ב-CMEK להצפנת משאבים או שמגבילים את המפתחות של Cloud KMS שאפשר להשתמש בהם להגנה באמצעות CMEK.

יצירת מאגר באמצעות מסוף Cloud de Confiance

  1. פותחים את הדף Repositories במסוף Cloud de Confiance .

    פתיחת הדף Repositories

  2. לוחצים על Create Repository (יצירת מאגר).

  3. מציינים את שם המאגר. לכל מיקום מאגר בפרויקט, שמות המאגרים צריכים להיות ייחודיים.

  4. בוחרים את פורמט המאגר.

  5. אם יש כמה מצבי מאגר, בוחרים באפשרות רגיל.

  6. בוחרים את המיקום של המאגר. מידע על סוגי מיקומים ומיקומים נתמכים זמין במאמר מיקומי מאגרים

  7. מוסיפים תיאור למאגר. התיאורים עוזרים לזהות את המטרה של המאגר ואת סוג הארטיפקטים שהוא מכיל.

    חשוב לא לכלול מידע אישי רגיש, כי תיאורי המאגרים לא מוצפנים.

  8. אם רוצים להשתמש בתוויות כדי לארגן את המאגרים, לוחצים על הוספת תווית ומזינים את צמד המפתח/ערך של התווית. אפשר להוסיף, לערוך או להסיר תוויות אחרי שיוצרים את המאגר.

  9. בקטע Encryption, בוחרים את מנגנון ההצפנה למאגר.

    • Google Cloud-powered encryption key – הצפנת תוכן המאגר באמצעותGoogle Cloud-powered encryption key.
    • מפתח בניהול הלקוח – הצפנת תוכן המאגר באמצעות מפתח שאתם שולטים בו דרך Cloud Key Management Service. הוראות להגדרת מפתחות מופיעות במאמר הגדרת CMEK למאגרי מידע.

    • במאגרי Docker, ההגדרה Immutable image tags (תגי תמונה שלא ניתן לשנות) קובעת שהמאגר ישתמש בתגי תמונה שתמיד מצביעים על אותו גיבוב תמונה. משתמש עם תפקיד אדמין ב-Artifact Registry יכול לשנות את ההגדרה הזו אחרי יצירת המאגר.

      • ההגדרה הזו מושבתת כברירת מחדל. תגי תמונות ניתנים לשינוי, כלומר, יכול להיות שהתקציר של התמונה שאליה התג מצביע ישתנה.
      • אם ההגדרה הזו מופעלת, תגי התמונות הם בלתי ניתנים לשינוי. תג תמיד צריך להצביע על אותו גיבוב של תמונה. מידע נוסף על תגי קובצי אימג' שניתנים לשינוי ושאי אפשר לשנות אותם זמין במאמר בנושא גרסאות של קובצי אימג' של קונטיינרים.
  10. לוחצים על יצירה.

‫Artifact Registry יוצר את המאגר ומוסיף אותו לרשימת המאגרים.

אחרי שיוצרים את המאגר:

יצירת מאגר באמצעות Google Cloud CLI

מריצים את הפקודה כדי ליצור מאגר חדש.

דירה

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

מחליפים את מה שכתוב בשדות הבאים:

  • REPOSITORY: שם המאגר. לכל מיקום של מאגר בפרויקט, השמות של המאגרים צריכים להיות ייחודיים.
  • LOCATION: המיקום האזורי של המאגר. אפשר להשמיט את הדגל הזה אם מגדירים ברירת מחדל. כדי לראות רשימה של מיקומים נתמכים, מריצים את הפקודה:
    gcloud artifacts locations list
  • DESCRIPTION: תיאור המאגר. אל תכללו מידע אישי רגיש, כי תיאורי מאגרים לא מוצפנים.
  • KMS-KEY: הנתיב המלא למפתח ההצפנה של Cloud KMS, אם משתמשים במפתח הצפנה בניהול הלקוח כדי להצפין את התוכן של המאגר. הנתיב הוא בפורמט:
        projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY

    מחליפים את מה שכתוב בשדות הבאים:

    • KMS-PROJECT: הפרויקט שבו המפתח מאוחסן.
    • KMS-LOCATION: המיקום של המפתח.
    • KEY-RING: השם של אוסף המפתחות.
    • KEY: השם של המפתח.
  • --async: חזרה מיידית, בלי המתנה שהפעולה תסתיים.

Docker

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

מחליפים את מה שכתוב בשדות הבאים:

  • REPOSITORY: שם המאגר. לכל מיקום של מאגר בפרויקט, שמות המאגרים צריכים להיות ייחודיים.

    • LOCATION: המיקום האזורי של המאגר. אפשר להשמיט את הדגל הזה אם מגדירים מיקום ברירת מחדל. כדי לראות רשימה של מיקומים נתמכים, מריצים את הפקודה:

      gcloud artifacts locations list
    • DESCRIPTION: תיאור המאגר. אל תכללו מידע אישי רגיש, כי תיאורי המאגרים לא מוצפנים.
    • KMS-KEY: הנתיב המלא למפתח ההצפנה של Cloud KMS, אם אתם משתמשים במפתח הצפנה בניהול הלקוח כדי להצפין את התוכן של המאגר. הנתיב הוא בפורמט:

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

      מחליפים את מה שכתוב בשדות הבאים:

      • KMS-PROJECT: הפרויקט שבו המפתח מאוחסן.
      • KMS-LOCATION: המיקום של המפתח.
      • KEY-RING: השם של אוסף המפתחות.
      • KEY: השם של המפתח.
    • --immutable-tags הוא דגל אופציונלי שמגדיר את המאגר כך שישתמש בתגים שתמיד מצביעים על אותו גיבוב של תמונה.

      כברירת מחדל, אם לא מעבירים את הדגל --immutable-tags, אפשר להעביר תג ל-digest של תמונה אחרת. מידע נוסף על תגי קובץ אימג' שאי אפשר לשנות ותגי קובץ אימג' שאפשר לשנות זמין במאמר גרסאות של קובץ אימג' של קונטיינר.

    • --async חוזרת באופן מיידי, בלי להמתין שהפעולה תסתיים.

טעים

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

מחליפים את מה שכתוב בשדות הבאים:

  • REPOSITORY: שם המאגר. לכל מיקום של מאגר בפרויקט, שמות המאגרים צריכים להיות ייחודיים.
  • LOCATION: המיקום האזורי של המאגר. אפשר להשמיט את הדגל הזה אם מגדירים ברירת מחדל. כדי לראות רשימה של מיקומים נתמכים, מריצים את הפקודה:
    gcloud artifacts locations list
  • DESCRIPTION: תיאור המאגר. אל תכללו מידע אישי רגיש, כי תיאורי מאגרים לא מוצפנים.
  • KMS-KEY: הנתיב המלא למפתח ההצפנה של Cloud KMS, אם משתמשים במפתח הצפנה בניהול הלקוח כדי להצפין את התוכן של המאגר. הנתיב הוא בפורמט:
        projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY

    מחליפים את מה שכתוב בשדות הבאים:

    • KMS-PROJECT: הפרויקט שבו המפתח מאוחסן.
    • KMS-LOCATION: המיקום של המפתח.
    • KEY-RING: השם של אוסף המפתחות.
    • KEY: השם של המפתח.
  • --async: חזרה מיידית, בלי המתנה שהפעולה תסתיים.

‫Artifact Registry יוצר את המאגר. מריצים את הפקודה הבאה כדי לראות תיאור של המאגר:

gcloud artifacts repositories describe REPOSITORY \
    --location=LOCATION

אחרי שיוצרים את המאגר:

יצירת מאגר באמצעות Terraform

משתמשים במשאב google_artifact_registry_repository כדי ליצור מאגרי תמונות. נדרשת גרסה terraform-provider-google 5.0.0 ומעלה.

אם אתם חדשים בשימוש ב-Terraform עבור Cloud de Confiance by S3NS, תוכלו לעיין בדף תחילת העבודה – Cloud de Confiance by S3NS באתר HashiCorp.

בדוגמה הבאה מוגדרים הספק ומאגר עם שם משאב Terraform‏ my-repo.

דירה

  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" }

מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT-ID הוא מזהה הפרויקט. Cloud de Confiance
  • LOCATION הוא המיקום של המאגר.
  • REPOSITORY הוא שם המאגר.
  • DESCRIPTION הוא התיאור האופציונלי של המאגר. חשוב לא לכלול מידע אישי רגיש, כי תיאורי המאגר לא מוצפנים.
  • KEY הוא השם של המפתח בשירות Cloud Key Management, אם אתם משתמשים במפתחות הצפנה בניהול הלקוח (CMEK) להצפנה. אם לא מציינים את הארגומנט הזה, נעשה שימוש בהגדרת ברירת המחדל, Google Cloud-powered encryption keys

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" }

מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT-ID הוא מזהה הפרויקט. Cloud de Confiance
  • LOCATION הוא המיקום של המאגר.
  • REPOSITORY הוא שם המאגר.
  • DESCRIPTION הוא התיאור האופציונלי של המאגר. חשוב לא לכלול מידע אישי רגיש, כי תיאורי המאגר לא מוצפנים.
  • KEY הוא השם של המפתח בשירות Cloud Key Management, אם אתם משתמשים במפתחות הצפנה בניהול הלקוח (CMEK) להצפנה. אם לא מציינים את הארגומנט הזה, נעשה שימוש בהגדרת ברירת המחדל, Google Cloud-powered encryption keys

טעים

  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" }

מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT-ID הוא מזהה הפרויקט. Cloud de Confiance
  • LOCATION הוא המיקום של המאגר.
  • REPOSITORY הוא שם המאגר.
  • DESCRIPTION הוא התיאור האופציונלי של המאגר. חשוב לא לכלול מידע אישי רגיש, כי תיאורי המאגר לא מוצפנים.
  • KEY הוא השם של המפתח בשירות Cloud Key Management, אם אתם משתמשים במפתחות הצפנה בניהול הלקוח (CMEK) להצפנה. אם לא מציינים את הארגומנט הזה, נעשה שימוש בהגדרת ברירת המחדל, Google Cloud-powered encryption keys

‫Artifact Registry יוצר את המאגר. מריצים את הפקודה הבאה כדי לראות תיאור של המאגר:

gcloud artifacts repositories describe REPOSITORY \
    --location=LOCATION

אחרי שיוצרים את המאגר:

עריכת תיאורים של מאגרים

אפשר לשנות את תיאור המאגר דרך מסוף Cloud de Confiance או דרך ה-CLI של gcloud.

המסוף

  1. פותחים את הדף Repositories במסוף Cloud de Confiance .

    פתיחת הדף Repositories

  2. ברשימת המאגרים, בוחרים את המאגר ולוחצים על Edit Repository.

  3. עורכים את תיאור המאגר ולוחצים על שמירה.

gcloud

כדי לעדכן את תיאור המאגר, מריצים את הפקודה:

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

מחליפים את מה שכתוב בשדות הבאים:

  • REPOSITORY: שם המאגר. אם הגדרתם מאגר ברירת מחדל, אתם יכולים להשמיט את הדגל הזה כדי להשתמש בברירת המחדל.
  • PROJECT: מזהה הפרויקט ב- Cloud de Confiance by S3NS. אם לא מציינים את הדגל הזה, המערכת משתמשת בפרויקט הנוכחי או בפרויקט ברירת המחדל.
  • ‫ ‫LOCATION הוא המיקום האזורי של המאגר. אפשר להשתמש בדגל הזה כדי להציג מאגרי מידע במיקום ספציפי. אם הגדרתם מיקום ברירת מחדל, אתם יכולים להשמיט את הדגל הזה כדי להשתמש בברירת המחדל.
  • DESCRIPTION: תיאור המאגר.

המאמרים הבאים