מדריך למתחילים: פיתוח ופריסה של אפליקציית אינטרנט ב-Nuxt.js ב-Cloud Run
איך משתמשים בפקודה אחת כדי ליצור ולפרוס אפליקציית אינטרנט מסוג Hello World מדוגמת קוד ל- Cloud de Confianceבאמצעות Cloud Run.
אם תפעלו לפי השלבים במדריך למתחילים הזה, Cloud Run ייצור בשבילכם קובץ Docker באופן אוטומטי כשתבצעו פריסה מקוד המקור.
לפני שמתחילים
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:
gcloud init -
יוצרים או בוחרים פרויקט ב- Cloud de Confiance .
התפקידים שנדרשים כדי לבחור או ליצור פרויקט
- בחירת פרויקט: כדי לבחור פרויקט לא נדרש תפקיד IAM ספציפי – אתם יכולים לבחור כל פרויקט שקיבלתם בו תפקיד.
-
יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד "יצירת פרויקטים" (
roles/resourcemanager.projectCreator), שכולל את ההרשאהresourcemanager.projects.create. איך מקצים תפקידים?
-
יוצרים פרויקט ב- Cloud de Confiance :
gcloud projects create PROJECT_ID
מחליפים את
PROJECT_IDבשם של הפרויקט ב- Cloud de Confiance שאתם יוצרים. -
בוחרים את הפרויקט שיצרתם ב- Cloud de Confiance :
gcloud config set project PROJECT_ID
מחליפים את
PROJECT_IDבשם הפרויקט ב- Cloud de Confiance .
-
אם משתמשים בפרויקט קיים, מוודאים שיש את ההרשאות הנדרשות כדי להשלים את ההדרכה. אם משתמשים בפרויקט חדש, לא צריך לוודא כי כבר יש את ההרשאות הנדרשות.
- כדי להגדיר את פרויקט ברירת המחדל לשירות Cloud Run:
מחליפים את PROJECT_ID בשם הפרויקט שיצרתם במדריך למתחילים.gcloud config set project PROJECT_ID
- אם לא מותקנת גרסה 20 ומעלה של Node.js, מתקינים את Node.js.
אם אתם כפופים לכלל מדיניות של הארגון של הגבלה לפי דומיין שמגבילה הפעלות לא מאומתות לפרויקט, תצטרכו לגשת לשירות שנפרס כמו שמתואר בקטע בדיקת שירותים פרטיים.
-
מפעילים את Cloud Run Admin API ואת Cloud Build API, אם הם עדיין לא מופעלים:
התפקידים שנדרשים כדי להפעיל ממשקי API
כדי להפעיל ממשקי API, צריך את ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידיםgcloud services enable run.googleapis.com
cloudbuild.googleapis.com אחרי שמפעילים את Cloud Run Admin API, חשבון השירות שמוגדר כברירת מחדל ב-Compute Engine נוצר באופן אוטומטי.
- למחירון של Cloud Run או למחשבון עלויות.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות להשלמת המדריך למתחילים, אתם צריכים לבקש מהאדמין לתת לכם את התפקידים הבאים ב-IAM:
- אדמין של Cloud Run (
roles/run.admin) בפרויקט - מפתח מקור ב-Cloud Run (
roles/run.sourceDeveloper) בפרויקט - משתמש בחשבון שירות (
roles/iam.serviceAccountUser) בזהות השירות - צפייה ביומנים (
roles/logging.viewer) בפרויקט
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
מתן גישה לפרויקט לחשבון השירות של Cloud Build
כברירת מחדל, Cloud Build משתמש בחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine בתור חשבון השירות שמוגדר כברירת מחדל ב-Cloud Build כדי ליצור את קוד המקור ואת המשאב של Cloud Run, אלא אם משנים את ההתנהגות הזו.
כדי ש-Cloud Build יוכל ליצור את המקורות, צריך להקצות לחשבון השירות של Cloud Build את התפקיד Cloud Run Builder (roles/run.builder) בפרויקט:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:SERVICE_ACCOUNT_EMAIL_ADDRESS \ --role=roles/run.builder
מחליפים את PROJECT_ID במזהה הפרויקט ב- Cloud de Confianceואת SERVICE_ACCOUNT_EMAIL_ADDRESS בכתובת האימייל של חשבון השירות של Cloud Build. אם אתם משתמשים בחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine בתור חשבון השירות של Cloud Build, השתמשו בפורמט הבא לכתובת האימייל של חשבון השירות:
PROJECT_NUMBER-compute@developer.s3ns-system.iam.gserviceaccount.com
מחליפים את PROJECT_NUMBER במספר הפרויקט ב- Cloud de Confiance.
במאמר יצירה וניהול של פרויקטים מוסבר איך למצוא את מזהה הפרויקט ואת מספר הפרויקט.
הקצאת התפקיד "מפתח ב-Cloud Run" מתעדכנת תוך כמה דקות.
כתיבת השירות לדוגמה
אתם יכולים לפרוס אפליקציית Nuxt.js קיימת ב-Cloud Run. כדי ליצור ולפרוס שירות Nuxt.js חדש:
כדי ליצור פרויקט Nuxt.js חדש בשם
helloworld, משתמשים בפקודה:npx -y nuxi@3 init helloworld --no-installמקישים על
Enterכשמופיעה בקשה לאשר את ברירות המחדל.משנים את הספרייה ל-
helloworld:cd helloworldמריצים את פקודת ההתקנה כדי לתקן חוסר התאמה ביחסי התלות:
npm install
האפליקציה מוכנה לפריסה.
פריסה ב-Cloud Run מקוד המקור
כשפורסים מהמקור, המערכת יוצרת באופן אוטומטי קובץ אימג' של קונטיינר מקוד המקור ופורסת אותו.
כדי לפרוס מקוד המקור:
בספריית קוד המקור, פורסים את התיקייה הנוכחית באמצעות הפקודה הבאה:
gcloud run deploy --source .
כשמופיעה בקשה להזין את שם השירות, לוחצים על Enter כדי לאשר את שם ברירת המחדל, לדוגמה
helloworld.אם תתבקשו להפעיל ממשקי API נוספים בפרויקט, למשל Artifact Registry API, הקישו על
y.כשמוצגת בקשה לבחור אזור: בוחרים את האזור הרצוי, לדוגמה
europe-west1.אם תתבקשו ליצור מאגר באזור שצוין, הקישו על
y.אם מופיעה בקשה לאפשר גישה ציבורית: משיבים
y. יכול להיות שההודעה הזו לא תופיע אם יש מדיניות ארגונית של הגבלה לפי דומיין שמונעת את זה. פרטים נוספים זמינים בקטע לפני שמתחילים.
אחר כך מחכים כמה רגעים עד שהפריסה תסתיים. אם הפעולה מצליחה, כתובת ה-URL של השירות מוצגת בשורת הפקודה.
כדי להיכנס לשירות שפרסתם, פותחים את כתובת ה-URL של השירות בדפדפן אינטרנט.
מיקומים של Cloud Run
Cloud Run הוא שירות אזורי, כלומר התשתית שמפעילה את שירותי Cloud Run נמצאת באזור ספציפי ומנוהלת על ידי Google, כך שהיא זמינה באופן יתיר בכל האזורים באותו אזור.
הגורמים העיקריים לבחירת האזור שבו יפעלו שירותי Cloud Run הם עמידה בדרישות של זמן אחזור, זמינות או עמידות.
בדרך כלל אפשר לבחור את האזור הכי קרוב למשתמשים, אבל כדאי להביא בחשבון את המיקום של המוצרים Cloud de Confianceהאחרים שמשמשים את שירות Cloud Run.
שימוש במוצרי Cloud de Confiance ביחד בכמה מיקומים יכול להשפיע על זמן האחזור של השירות וגם על העלות.
אפשר להשתמש ב-Cloud Run באזורים הבאים:
בכפוף לתמחור ברמה 1
asia-east1(טייוואן)asia-northeast1(טוקיו)asia-northeast2(אוסקה)-
asia-south1(מומבאי, הודו) asia-southeast3(בנגקוק)-
europe-north1(פינלנד)רמה נמוכה של CO2
europe-north2(שטוקהולם)רמה נמוכה של CO2
-
europe-southwest1(מדריד)רמה נמוכה של CO2
-
europe-west1(בלגיה)רמה נמוכה של CO2
-
europe-west4(הולנד)רמה נמוכה של CO2
-
europe-west8(מילאנו)רמה נמוכה של CO2
-
europe-west9(פריז)רמה נמוכה של CO2
me-west1(תל אביב)northamerica-south1(מקסיקו)us-central1(אייווה)רמה נמוכה של CO2
us-east1(קרוליינה הדרומית)us-east4(צפון וירג'יניה)us-east5(קולומבוס)us-south1(דאלאס)רמה נמוכה של CO2
us-west1(אורגון)רמה נמוכה של CO2
בכפוף לתמחור ברמה 2
africa-south1(יוהנסבורג)asia-east2(הונג קונג)asia-northeast3(סיאול, דרום קוריאה)asia-southeast1(סינגפור)asia-southeast2(ג'קרטה)asia-south2(דלהי, הודו)australia-southeast1(סידני)australia-southeast2(מלבורן)europe-central2(ורשה, פולין)רמה נמוכה של CO2
europe-west10(ברלין)-
europe-west12(טורינו)רמה נמוכה של CO2
-
europe-west2(לונדון, בריטניה)רמה נמוכה של CO2
europe-west3(פרנקפורט, גרמניה)europe-west6(ציריך, שווייץ)רמה נמוכה של CO2
me-central1(דוחא)me-central2(דמאם)-
northamerica-northeast1(מונטריאול)רמה נמוכה של CO2
-
northamerica-northeast2(טורונטו)רמה נמוכה של CO2
-
southamerica-east1(סאו פאולו, ברזיל)רמה נמוכה של CO2
southamerica-west1(סנטיאגו, צ'ילה)רמה נמוכה של CO2
us-west2(לוס אנג'לס)us-west3(סולט לייק סיטי)us-west4(לאס וגאס)
אם כבר יצרתם שירות Cloud Run, אתם יכולים לראות את האזור במרכז הבקרה של Cloud Run במסוףCloud de Confiance .
הסרת המשאבים
כדי להימנע מחיובים נוספים בחשבון Cloud de Confiance by S3NS , צריך למחוק את כל המשאבים שפרסתם באמצעות המדריך למתחילים.
מחיקת המאגר
ב-Cloud Run לא תחויבו כשהשירות שפרסתם לא בשימוש. עם זאת, יכול להיות שעדיין תחויבו על אחסון קובץ האימג' של הקונטיינר ב-Artifact Registry. כדי למחוק מאגרים של Artifact Registry, פועלים לפי השלבים שמפורטים במאמר מחיקת מאגרים במסמכי התיעוד של Artifact Registry.
מחיקת השירות
שירותי Cloud Run לא צוברים עלויות עד שהם מקבלים בקשות. כדי למחוק את השירות ב-Cloud Run, מבצעים את אחת מהפעולות הבאות:
המסוף
כדי למחוק שירות:
נכנסים לדף Services של Cloud Run במסוף Cloud de Confiance by S3NS :
ברשימת השירותים, מאתרים את השירות שרוצים למחוק ולוחצים על תיבת הסימון שלו כדי לבחור אותו.
לוחצים על Delete. כל הגרסאות של השירות יימחקו.
gcloud
כדי למחוק שירות, מריצים את הפקודה הבאה:
gcloud run services delete SERVICE --region REGION
מחליפים את מה שכתוב בשדות הבאים:
- SERVICE: שם השירות.
- REGION: Cloud de Confiance האזור של השירות.
מחיקת פרויקט הבדיקה
מחיקת הפרויקט ב- Cloud de Confiance מפסיקה את החיוב על כל המשאבים באותו פרויקט. כדי לשחרר את כל המשאבים של Cloud de Confiance by S3NS בפרויקט:
כדי למחוק פרויקט ב- Cloud de Confiance :
gcloud projects delete PROJECT_ID
המאמרים הבאים
למידע נוסף על בניית קונטיינר מקוד מקור ודחיפה למאגר, ראו: