Google Cloud CLI מספק אמולטור מקומי בזיכרון ל-Firestore, שאפשר להשתמש בו כדי לבדוק את האפליקציה שלכם ב-Firestore במצב Datastore. אפשר להשתמש באמולטור עם כל ספריות הלקוח של מצב Datastore. מומלץ להשתמש באמולטור רק לבדיקות מקומיות.
משתמשים ב-gcloud emulators firestore עם --database-mode=datastore-mode כדי לבדוק את ההתנהגות של Firestore במצב Datastore.
אל תשתמשו באמולטור לפריסות בסביבת ייצור. האמולטור מאחסן נתונים רק בזיכרון, ולכן הנתונים לא נשמרים בין הפעלות.
התקנת האמולטור
כדי להתקין את אמולטור Firestore, מתקינים ומעדכנים את ה-CLI של gcloud:
כדי לקבל את התכונות העדכניות, צריך לעדכן את ההתקנה של ה-CLI של gcloud:
gcloud components update
הרצת האמולטור
מריצים את הפקודה הבאה כדי להפעיל את האמולטור:
gcloud emulators firestore start --database-mode=datastore-modeהמאמולטור מדפיס את המארח ואת מספר היציאה שבהם הוא פועל.
כברירת מחדל, האמולטור מנסה להשתמש ב-
127.0.0.1:8080. כדי לקשר את האמולטור למארח וליציאה ספציפיים, משתמשים בדגל האופציונלי--host-portומחליפים את HOST ואת PORT:gcloud emulators firestore start --database-mode=datastore-mode --host-port=HOST:PORTמשתמשים במקש הקיצור
Control + Cכדי לעצור את האמולטור.
חיבור לאמולטור
כדי לחבר ספריית לקוח ואפליקציה לאמולטור, צריך להגדיר את משתנה הסביבה DATASTORE_EMULATOR_HOST. כשמשתנה הסביבה הזה מוגדר, ספריות הלקוח מתחברות אוטומטית לאמולטור.
export DATASTORE_EMULATOR_HOST="HOST:PORT"
ייבוא ישויות לאמולטור
תכונת הייבוא של האמולטור מאפשרת לטעון ישויות מקבוצה של קובצי ייצוא של ישויות לתוך האמולטור. קבצי ייצוא של ישויות יכולים להגיע מייצוא של מסד נתונים במצב Datastore או ממופע של אמולטור.
יש שתי דרכים לייבא ישויות לאמולטור. האפשרות הראשונה היא להוסיף את הדגל import-data לפקודת ההפעלה של האמולטור. השיטה השנייה היא לשלוח בקשת ייבוא POST לאמולטור. אפשר להשתמש ב-curl או בכלי דומה. כדאי לעיין בדוגמאות הבאות.
פרוטוקול
curl -X POST http://localhost:8080/emulator/v1/projects/PROJECT_ID:import \
-H 'Content-Type: application/json' \
-d '{"database":"DATABASE", "export_directory":"EXPORT_DIRECTORY"}'
localhost:8080 אם האמולטור משתמש ביציאה אחרת.