ב-Artifact Registry יש מוסכמת שמות לזיהוי מאגרי תמונות ותמונות כשמשתמשים ב-API, ב-gcloud ובפקודות docker כדי ליצור אינטראקציה עם מאגרים.
מאגרי Docker
השם המלא של מאגר Docker הוא בפורמט הבא:
LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY
כאשר:
-
LOCATIONהוא המיקום האזורי או המיקום במספר אזורים של המאגר. -
PROJECTהוא מזהה הפרויקט במסוף. Google Cloud אם מזהה הפרויקט מכיל נקודתיים (:), כדאי לעיין במאמר בנושא פרויקטים בהיקף הדומיין. -
REPOSITORYהוא שם המאגר.
לדוגמה, תמונה עם המאפיינים הבאים:
- מיקום המאגר:
us-west1 - פורמט המאגר:
docker - שם המאגר:
my-repo - מזהה הפרויקט:
my-project
המאגר מצוין כך:
us-west1-docker.pkg.dev/my-project/my-repo
השמות של קובצי האימג' של הקונטיינרים
השם המלא של קובץ אימג' של קונטיינר מופיע באחד מהפורמטים הבאים:
LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY/IMAGE
או
LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY/IMAGE:TAG
או
LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY/IMAGE@IMAGE-DIGEST
where:
-
LOCATIONהוא המיקום האזורי או המיקום במספר אזורים של המאגר. -
PROJECTהוא מזהה הפרויקט במסוף. Google Cloud אם מזהה הפרויקט מכיל נקודתיים (:), כדאי לעיין במאמר בנושא פרויקטים בהיקף הדומיין. -
REPOSITORYהוא שם המאגר שבו מאוחסן האימג'. -
IMAGEהוא שם האימג' במאגר. -
TAGהוא התג של גרסת התמונה שרוצים למשוך. -
IMAGE-DIGESTהוא ערך הגיבוב sha256 של תוכן התמונה. ב Google Cloud מסוף, לוחצים על התמונה הספציפית כדי לראות את המטא-נתונים שלה. התקציר מופיע כתקציר תמונה. אם לא מציינים תג או תקציר, Artifact Registry מחפש את התמונה עם תג ברירת המחדלlatest. מידע על גרסאות זמין במאמר גרסאות של קובצי אימג' של קונטיינרים.
לדוגמה, תמונה עם המאפיינים הבאים:
- מיקום המאגר:
us-west1 - שם המאגר:
my-repo - מזהה הפרויקט:
my-project - שם התמונה:
test - תג:
staging
הגרסה הזו של התמונה שתויגה כ-staging מוגדרת כך:
us-west1-docker.pkg.dev/my-project/my-repo/test:staging
גרסאות של קובץ אימג' של קונטיינר
מאגר יכול להכיל הרבה קובצי אימג' של קונטיינרים, ולכל קובץ אימג' יכולות להיות גרסאות שונות. כדי לזהות גרסה ספציפית של תמונה, אפשר לציין את ה-digest או התג של התמונה.
- תקציר
- תקציר תמונות הוא גיבוב שנוצר באופן אוטומטי של אינדקס התמונות או של מניפסט התמונות. כל תקציר תמונה הוא מזהה ייחודי של גרסת תמונה, ואי אפשר לשנות אותו. התקציר הוא ערך הגיבוב (hash) מסוג sha256 של תוכן התמונה.
- תג
תג תמונה הוא תווית, ולרוב הוא מחרוזת שאנשים יכולים לקרוא, כמו
v1.1אוdevelopment. תג יכול להפנות רק לגרסה אחת של תמונה. ב-Artifact Registry, אפשר להגדיר מאגר Docker כך שיאפשר תגי אימג' שניתנים לשינוי או שיאכוף תגי אימג' שלא ניתן לשנות.ניתן לשינוי: תג מצביע רק על גרסה אחת של תמונה, אבל ה-digest הספציפי שהוא מפנה אליו יכול להשתנות.
גישה נפוצה היא לתייג תמונות עם מזהה גרסה, כמו
v1.1במשך זמן של תהליך build. כשגרסת ה-build דוחפת כמה גרסאות של התמונה למאגר עם אותו תגv1.1, התג מפנה ל-digest של הגרסה האחרונה שנדחפה למאגר. למרות שתגי תמונה שניתנים לשינוי מספקים דרך נוחה לתיוג גרסאות, גורם זדוני יכול גם לתפעל אותם כדי לשייך תג לגרסה זדונית של תמונה.בלתי משתנה: במאגר, תג תמיד מצביע על אותו גיבוב תמונה. אם מאגר Artifact Registry מוגדר לתגי תמונות בלתי ניתנים לשינוי, אסור לבצע את הפעולות הבאות:
- מחיקת תמונה מתויגת. עדיין מותר למחוק תמונות שלא תויגו.
- הסרת תג מתמונה.
- העלאה של תמונה עם תג שכבר נמצא בשימוש בגרסה אחרת של התמונה במאגר.
לדוגמה, תמונה עם המאפיינים הבאים:
- מיקום המאגר:
us-west1 - שם המאגר:
my-repo - מזהה הפרויקט:
my-project - שם התמונה:
test - תג:
staging - תקציר:
sha256:4d11e24ba8a615cc85a535daa17b47d3c0219f7eeb2b8208896704ad7f88ae2d
כדי לזהות את התמונה באמצעות התג, מוסיפים את התג :staging לשם התמונה:
us-west1-docker.pkg.dev/my-project/my-repo/test:staging
כדי לזהות את התמונה באמצעות הגיבוב, מוסיפים את הגיבוב לשם התמונה אחרי @:
us-west1-docker.pkg.dev/my-project/my-repo/test@sha256:4d11e24ba8a615cc85a535daa17b47d3c0219f7eeb2b8208896704ad7f88ae2d
:), כדאי לעיין במאמר בנושא פרויקטים בהיקף הדומיין.
במסוף, במסך Images, בעמודה Tags מופיעים התגים של התמונה. לוחצים על גרסת התמונה כדי לראות את המטא-נתונים, כולל תקציר התמונה.
מידע נוסף על תיוג מופיע במאמר בנושא תיוג תמונות.
פרויקטים בהיקף הדומיין
אם הפרויקט מוגבל לדומיין שלכם, מזהה הפרויקט כולל את שם הדומיין ואחריו נקודתיים (:). בגלל האופן שבו Docker מתייחס לנקודתיים, כשמציינים תקציר של תמונה ב-Artifact Registry, צריך להחליף את הנקודתיים בקו נטוי. כדי לזהות תמונות בסוגי הפרויקטים האלה, משתמשים בפורמט הבא:
LOCATION-docker.pkg.dev/DOMAIN/PROJECT-ID/REPOSITORY/IMAGE@IMAGE-DIGEST
לדוגמה, הפרויקט עם המזהה example.com:my-project יכול לכלול את התמונה הבאה:
us-west1-docker.pkg.dev/example.com/my-project/my-repo/image-name
שמות המאגרים ככתובות URL
כדי לגשת למאגר או לארטיפקט במאגר במסוף Google Cloud , מוסיפים את הקידומת https:// לשם המלא שלו.
לדוגמה, כדי להציג את המאגר us-west1-maven.pkg.dev/my-project/my-repo, משתמשים בכתובת ה-URL הבאה:
https://us-west1-maven.pkg.dev/my-project/my-repo
כדי לראות את התמונה us-west1-docker.pkg.dev/example.com/my-project/my-repo/my-image,
משתמשים בכתובת ה-URL הבאה:
https://us-west1-docker.pkg.dev/example.com/my-project/my-repo/my-image
כל משתמש מאומת שיש לו הרשאה לגשת למאגר יכול להשתמש בקישורים האלה.