Artifact Registry שומר במטמון תמונות ציבוריות של Docker Hub שניגשים אליהן לעיתים קרובות ב-mirror.gcr.io. אפשר להגדיר את שירות ה-daemon של Docker כך שישתמש בתמונה ציבורית שנשמרה במטמון אם היא זמינה, או שימשוך את התמונה מ-Docker Hub אם עותק שנשמר במטמון לא זמין.
התמונות במטמון בכתובת mirror.gcr.io הן:
- מאוחסן במאגר שמנוהל על ידי Google Cloud.
- יותר מבודדים מהפסקות שירות ב-Docker Hub.
- משולב עם Google Cloud המערכת האקולוגית.
- הסנכרון מתבצע עם Docker Hub.
הגדרת שירות ה-daemon של Docker
כדי להגדיר את שירות ה-daemon של Docker כך שימשוך תמונות ממטמון Artifact Registry:
CLI
מגדירים את הדמון באחת מהדרכים הבאות:
כדי להגדיר את שירות ה-daemon של Docker באופן אוטומטי בזמן ההפעלה, צריך להגדיר את הערך הבא ב-
/etc/docker/daemon.json{ "registry-mirrors": ["https://mirror.gcr.io"] }כשמפעילים את ה-daemon, מעבירים את שם המארח של Artifact Registry:
dockerd --registry-mirror=https://mirror.gcr.ioמוסיפים את השורה הבאה לקובץ
/etc/default/docker:DOCKER_OPTS="${DOCKER_OPTS} --registry-mirror=https://mirror.gcr.io"
מפעילים מחדש את שירות ה-Docker.
ב-Linux, מריצים אחת מהפקודות הבאות:
sudo service docker restartאו
sudo service docker stop && sudo service docker startב-macOS או ב-Windows, מריצים את הפקודה הבאה:
docker-machine restart
ממשק משתמש של Docker
- פותחים את התפריט Preferences (העדפות) של Docker.
- לוחצים על Daemon.
לוחצים על מתקדם. בשדה JSON, מוסיפים מפתח
registry-mirrorsעם הערךhttps://mirror.gcr.io:{ "registry-mirrors" : [ "https://mirror.gcr.io" ] }לוחצים על אישור והפעלה מחדש.
כדי לוודא שהמטמון מוגדר בצורה נכונה, מריצים את הפקודה:
docker system info
הפלט צריך לכלול את Registry Mirrors ולהיראות בערך כך:
Containers: 2
Running: 0
Paused: 0
Stopped: 2
Images: 2
Server Version: 17.03.1-ce
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
...
Registry Mirrors:
https://mirror.gcr.io
שליפת תמונות מהמטמון
Artifact Registry מוסיף למטמון תמונות שמבקשים לעיתים קרובות, כדי שהן יהיו זמינות לבקשות עתידיות. בנוסף, אנחנו מסירים מדי פעם תמונות שכבר לא נדרשות.
אחרי שמגדירים את שירות ה-daemon של Docker כך שישתמש במטמון של Artifact Registry, Docker מבצע את השלבים הבאים כשמושכים קובץ אימג' ציבורי של Docker Hub באמצעות פקודה docker pull:
- הדמון של Docker בודק את המטמון של Artifact Registry ומביא את קובצי האימג' אם הם קיימים. אם הגדרת הדמון כוללת מראות אחרות של Docker, הדמון בודק כל אחת מהן לפי הסדר כדי למצוא עותק של התמונה במטמון.
- אם התמונה עדיין לא נמצאה, דמון Docker מאחזר את התמונה מהמאגר הקנוני ב-Docker Hub.
שליפת תמונות שנשמרו במטמון לא נספרת במסגרת המגבלות על קצב יצירת הבקשות ב-Docker Hub. עם זאת,
אין ערובה לכך שתמונה מסוימת תישאר במטמון למשך זמן ממושך. אפשר לקבל תמונות שנשמרו במטמון רק ב-mirror.gcr.io על ידי הגדרת שירות ה-daemon של Docker.
כדי לבצע אימות ל-Docker Hub עבור תמונות שלא נשמרו במטמון ב-mirror.gcr.io, צריך להשתמש במאגרים מרוחקים של Artifact Registry. מאגרים מרוחקים תומכים באימות ל-Docker Hub. מומלץ לבצע אימות ב-Docker Hub גם אם אתם משתמשים רק בתמונות ציבוריות, כי כך תוכלו להגדיל את מגבלת קצב ההורדה. מידע נוסף על מגבלות קצב ההורדה ב-Docker Hub זמין במאמר בנושא מגבלת קצב ב-Docker Hub.
לתשומת ליבכם
כשמשתמשים במטמון של Artifact Registry Docker Hub, חשוב להביא בחשבון את הנקודות הבאות:
Artifact Registry משמש רק כמטמון לתמונות שאתם מאחסנים ב-Docker Hub.Artifact Registry לא מאמת, סורק או מתקן פגיעויות בתמונות שנשמרו במטמון מ-Docker Hub. Google Cloud באחריותכם לוודא שהתמונות שאתם מאחסנים ב-Docker Hub עומדות בדרישות האבטחה והתאימות של הארגון. אם אתם צריכים סריקה פעילה של נקודות חולשה, כדאי להשתמש בניתוח ארטיפקטים.
המטרה של מטמון Artifact Registry היא לשפר את היציבות, ולכן קובצי אימג' לא נמחקים ממנו מיד כשהם מוסרים מ-Docker Hub. יכול להיות שתמונות שנמחקו מ-Docker Hub יישארו זמינות במטמון של Artifact Registry למשך כמה ימים לפני שהן יוסרו מהמטמון. Google Cloud שירותים שמגדירים מראש את השימוש במטמון, כמו Cloud Build ו-Google Kubernetes Engine, עשויים להמשיך להשתמש אוטומטית בתמונות שלא נוקו מהמטמון של Artifact Registry.
המאמרים הבאים
- אתם יכולים ליצור מאגרים מרוחקים ב-Artifact Registry כדי לשמור במטמון תמונות של Docker Hub.
- אתם יכולים ליצור שיקופי Docker מקומיים משלכם כדי לשמור תמונות במטמון. פרטים נוספים מופיעים בתיעוד של Docker.
- קוראים את התיעוד של Docker Hub.