אפליקציית App Engine מוגדרת באמצעות קובץ app.yaml, שמכיל את זמן הריצה, רכיבי ה-handler, קנה המידה והגדרות כלליות אחרות, כולל משתני סביבה.
app.yaml קבצים בקירוב
אפשר לציין את הגדרות סביבת זמן הריצה של אפליקציית Java, כולל גרסאות וכתובות URL, בקובץ app.yaml. הקובץ הזה משמש כקובץ תיאור פריסה של גרסה ספציפית של שירות.
אם לא תיצרו קובץ app.yaml, הפקודה gcloud app deploy יכולה ליצור קובץ כזה כשפורסים את האפליקציה.
קובץ ה-app.yaml שנוצר על ידי App Engine מכיל רק את ההגדרות שנדרשות להפעלת האפליקציה.
בדרך כלל, בקובץ app.yaml נדרש רק הרכיב runtime לאפליקציית Java פשוטה בסביבה הרגילה, לדוגמה:
runtime: java25
ל-App Engine יש ערכי ברירת מחדל לכל ההגדרות האחרות, כולל הסוג של מופע F1, שקובע את משאבי הזיכרון וה-CPU שזמינים לאפליקציה, והתאמה אוטומטית לעומס (automatic scaling), שקובעת איך ומתי נוצרים מופעים חדשים של האפליקציה.
אם צריך לעקוף את הגדרות ברירת המחדל, יוצרים קובץ app.yaml ומציינים את ההגדרות הרצויות. מידע נוסף זמין במאמר בנושא app.yaml.
אתם יכולים לציין שם ייחודי לקובצי app.yaml, אבל אז תצטרכו לציין את שם הקובץ גם בפקודת הפריסה. לדוגמה, אם קובץ app.yaml נקרא service-name-app.yaml או app.standard.yaml, תצטרכו לפרוס את האפליקציה באמצעות אחת מהאפשרויות הבאות:
gcloud app deploy service-name-app.yaml
gcloud app deploy app.standard.yaml
app.yaml באפליקציה זמין במאמר מבנה של שירותי אינטרנט.
בפרויקט Maven, המיקום הרגיל של קובץ app.yaml הוא בספרייה src/main/appengine. התוסף App Engine Maven ייצור ספרייה נכונה בשם target/appengine-staging שמכילה את ארטיפקטים של JAR ואת הקובץ app.yaml, ויהיה מוכן לפריסה.
זוהי דוגמה למבנה של פרויקט Maven:
MyDir/
pom.xml
[index.yaml]
[cron.yaml]
[dispatch.yaml]
src/main/
appengine/
app.yaml
java/com.example.mycode/
MyCode.java
אם יש לכם יותר מקובץ JAR אחד בספריית הפרויקט או שאתם רוצים לציין נקודת כניסה מותאמת אישית, אתם צריכים לציין אותה ברכיב entrypoint בקובץ app.yaml.
כל רכיבי ההגדרה
רשימה מלאה של כל הרכיבים הנתמכים בקובץ ההגדרות הזה זמינה בחומר העזר בנושא app.yaml.