הפונקציה של Cloud Run פועלת בסביבה שמורכבת מגרסת מערכת הפעלה עם חבילות של תוספים, תמיכה בשפה וספריית .NET Functions Framework שתומכת בפונקציה ומפעילה אותה. הסביבה הזו מזוהה לפי גרסת השפה, והיא נקראת מזהה זמן הריצה.
הכנת הפונקציה
אפשר להכין פונקציה ישירות ממסוף Google Cloud או לכתוב אותה במחשב המקומי ולהעלות אותה. כדי להכין את המחשב המקומי לפיתוח ב- .NET, אפשר לעיין במאמר הגדרת סביבת פיתוח ב- .NET.
זמני ריצה וקובצי אימג' בסיסיים נתמכים של .NET
| זמן ריצה | המזהה של סביבת זמן הריצה | מקבצים | תמונת הבסיס בזמן הריצה |
|---|---|---|---|
| .NET 10 | dotnet10 |
|
|
| .NET 8 | dotnet8 |
|
|
| .NET 6 | dotnet6 |
|
|
| .NET Core 3 | dotnet3 | google-18-full | google-18-full/dotnet3 |
חבילת תבניות
חבילת התבניות עוזרת לכם ליצור פונקציות חדשות. כדי להשתמש בו:
מתקינים את .NET SDK.
מתקינים את חבילת התבניות:
dotnet new install Google.Cloud.Functions.Templates
יש תבניות לשלושת סוגי הפונקציות ב-C# (ברירת המחדל), ב-F# וב-Visual Basic. כשיוצרים פרויקט חדש מתבנית, מציינים -lang f# כדי ליצור פרויקט F# , או -lang vb כדי ליצור פרויקט Visual Basic.
בחירת זמן הריצה
כשפורסים את הפונקציה, צריך לציין סביבת זמן ריצה של .NET שתואמת למסגרת היעד בקובץ הפרויקט (MyFunction.csproj או דומה). במהלך הפריסה, אפשר לבחור באחת מהסביבות של .NET שנתמכות עבור הפונקציה.
אפשר לבחור גרסת זמן ריצה באמצעות מסוף Google Cloud או ה-CLI של gcloud. לוחצים על הכרטיסייה עם ההוראות לשימוש בכלי הרצוי:
gcloud
מציינים את קובץ הבסיס של .NET לפונקציה באמצעות הדגל --base-image, במהלך פריסת הפונקציה. לדוגמה:
gcloud run deploy FUNCTION \
--source . \
--function FUNCTION_ENTRYPOINT \
--base-image dotnet10
מחליפים את:
FUNCTION בשם הפונקציה שאתם פורסים. אפשר להשמיט את הפרמטר הזה לגמרי, אבל אם תשמיטו אותו, תתבקשו לציין את השם.
FUNCTION_ENTRYPOINT עם נקודת הכניסה לפונקציה בקוד המקור. זה הקוד ש-Cloud Run מריץ כשהפונקציה פועלת. הערך של הדגל הזה צריך להיות שם של פונקציה או שם מלא של מחלקה שקיימים בקוד המקור.
הוראות מפורטות לפריסת פונקציה באמצעות ה-CLI של gcloud מופיעות במאמר פריסת פונקציות ב-Cloud Run.
המסוף
אפשר לבחור גרסת זמן ריצה כשיוצרים או מעדכנים פונקציית Cloud Run במסוף Google Cloud . הוראות מפורטות לפריסת פונקציה זמינות במאמר פריסת פונקציות ב-Cloud Run.
כדי לבחור סביבת ריצה במסוף Google Cloud כשיוצרים פונקציה, פועלים לפי השלבים הבאים:
במסוף Google Cloud , נכנסים לדף Cloud Run:
לוחצים על כתיבת פונקציה.
ברשימה Runtime בוחרים גרסת זמן ריצה של .NET.
לוחצים על Create ומחכים ש-Cloud Run ייצור את השירות באמצעות עדכון placeholder.
המסוף יפנה אתכם לכרטיסייה מקור, שבה תוכלו לראות את קוד המקור של הפונקציה. לוחצים על שמירה ופריסה מחדש.
הוראות מפורטות לעדכון גרסת זמן הריצה אחרי פריסת הפונקציה מופיעות במאמר פריסה מחדש של קוד מקור חדש.
מבנה קוד המקור
כדי שפונקציות Cloud Run יוכלו למצוא את ההגדרה של הפונקציה, קוד המקור צריך להיות במבנה מסוים. מידע נוסף זמין במאמר בנושא כתיבה של פונקציות Cloud Run.
ציון יחסי תלות
פונקציות Cloud Run של .NET משתמשות בקבצים של פרויקט Microsoft Build Engine (MSBuild), שהם מרכזיים לתהליך הבנייה והפריסה. אפשר לציין תלויות של הפונקציה בקובץ פרויקט. ב-C# סיומת הקובץ היא .csproj, ב-F# היא .fsproj וב-Visual Basic היא .vbproj.
מידע נוסף על תלות ועל סוגים אחרים של התאמה אישית זמין במאמר התאמה אישית באמצעות מחלקות הפעלה של פונקציות.