אפשר להשתמש ב-Cloud Storage כדי לאחסן קבצים כמו סרטים או תמונות או תוכן סטטי אחר, ולהציג אותם.
במאמר הזה מוסבר איך להשתמש בספריות הלקוח של Cloud ל-Cloud Storage באפליקציה כדי לאחסן נתונים ולאחזר נתונים מ-Cloud Storage.
אפשר להשתמש באפליקציה לדוגמה במדריך הזה לכל גרסה נתמכת של Python. לשם כך, צריך לציין את גרסת זמן הריצה ואת מערכת ההפעלה בקובץ app.yaml.
לפני שמתחילים
- פועלים לפי ההוראות שבקטע הגדרת סביבת הפיתוח כדי להגדיר את הסביבה והפרויקט, ולהבין איך האפליקציות בנויות ב-App Engine. חשוב לרשום ולשמור את מזהה הפרויקט, כי תצטרכו אותו כדי להריץ את אפליקציית הדוגמה שמתוארת במסמך הזה.
חשוב ליצור קטגוריה של Cloud Storage לאפליקציה באמצעות הפעלת הפקודה הבאה:
gcloud storage buckets create gs://YOUR_BUCKET_NAMEהופכים את הקטגוריה לקריאה באופן ציבורי כדי שניתן יהיה להציג ממנה קבצים:
gcloud storage buckets add-iam-policy-binding gs://<var>YOUR_BUCKET_NAME</var> --member=allUsers --role=roles/storage.objectViewer
הורדת הדוגמה
Go
כדי לשכפל את המאגר:
git clone https://github.com/GoogleCloudPlatform/golang-samples.git
cd golang-samples/appengine_flexible/storage
Java
כדי לשכפל את המאגר:
git clone https://github.com/GoogleCloudPlatform/java-docs-samples
cd java-docs-samples/flexible/java-17/cloudstorage
Node.js
כדי לשכפל את המאגר:
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples/
cd nodejs-docs-samples/appengine/storage/flexible
PHP
כדי לשכפל את המאגר:
git clone https://github.com/GoogleCloudPlatform/php-docs-samples
cd php-docs-samples/appengine/flexible/storage
Python
כדי לשכפל את המאגר:
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
cd python-docs-samples/appengine/flexible/storage
Ruby
כדי לשכפל את המאגר:
git clone https://github.com/GoogleCloudPlatform/ruby-docs-samples
cd ruby-docs-samples/appengine/flexible/storage/
.NET
מורידים את האפליקציה לדוגמה ומחלצים אותה.
אם משתמשים בשורת הפקודה, עוברים לספריית האפליקציה הבאה:
dotnet-docs-samples\appengine\flexible\CloudStorage\CloudStorage.Sample
כדי להריץ את האפליקציה באופן מקומי, צריך להגדיר חשבון שירות ולהוריד את פרטי הכניסה:
פותחים את רשימת פרטי הכניסה במסוף Google Cloud .
לוחצים על יצירת פרטי כניסה.
בוחרים באפשרות Service account key.
נפתח חלון Create service account key (יצירת מפתח לחשבון שירות).
לוחצים על הרשימה Service account ובוחרים באפשרות Compute Engine default service account.
בוחרים באפשרות JSON בתור Key type.
לוחצים על יצירה.
מוצג חלון New private key והמפתח הפרטי של המשתמש מורד באופן אוטומטי.
לוחצים על Close.
עריכה של הגדרת הפרויקט והתקנת יחסי תלות
Go
בapp.yaml, מגדירים את GCLOUD_STORAGE_BUCKET. הערך הזה הוא השם של קטגוריה של Cloud Storage שיצרתם קודם.
Java
ב-app.yaml, מגדירים את BUCKET_NAME לקטגוריה ב-Cloud Storage שיצרתם קודם לפרויקט.
ב-pom.xml, מגדירים את com.google.cloud כתלות ומציינים את google-cloud-storage כ-artifactID של התלות הזו. כך הפונקציות יוכלו להשתמש ב-Cloud Storage.
Node.js
ב-app.yaml, מוסיפים את מזהה הפרויקט לערך של הסביבה GOOGLE_CLOUD_PROJECT. אחר כך מגדירים את ערך הסביבה GCLOUD_STORAGE_BUCKET לשם של קטגוריית Cloud Storage שיצרתם קודם.
ב-package.json, מוסיפים את @google-cloud/storage כתלות, שמספקת את הפונקציות לשימוש ב-Cloud Storage.
הוראות להרצה ולבדיקה באופן מקומי מפורטות בקובץ README.md.
PHP
ב-app.yaml, מגדירים את CLOUD_STORAGE_BUCKET. הערך הזה הוא השם של קטגוריית Cloud Storage שיצרתם קודם.
ב-composer.json, שימו לב שצריך לכלול את ספריית הלקוח של Cloud, כי היא מספקת פונקציות של Cloud Storage.
Python
ב-app.yaml, מגדירים את GOOGLE_STORAGE_BUCKET. הערך הזה הוא השם של קטגוריית Cloud Storage שיצרתם קודם.
ב-requirements.txt, שימו לב שצריך לכלול את הספרייה google-cloud-storage, כי היא מספקת פונקציות של Cloud Storage.
Ruby
ב-app.yaml, מגדירים את GCLOUD_STORAGE_BUCKET לקטגוריה ב-Cloud Storage שיצרתם קודם לפרויקט.
שימו לב: כדי להשתמש בפונקציות של Cloud Storage, צריך לכלול את הספרייה gcloud ב-Gemfile.
.NET
בקובץ app.yaml , מגדירים את TEST_GOOGLE_BUCKET_NAME לקטגוריית Cloud Storage שיצרתם קודם בשביל הפרויקט.
env_variables:
TEST_GOOGLE_BUCKET_NAME: [your-bucket-name]
קוד אפליקציה
Go
אפליקציית הדוגמה מציגה דף אינטרנט שמבקש מהמשתמש לספק קובץ לאחסון ב-Cloud Storage. כשהמשתמש בוחר קובץ ולוחץ על 'שליחה', ה-handler של ההעלאה כותב את הקובץ לקטגוריה של Cloud Storage באמצעות הפונקציה NewWriter של Cloud Storage.
שימו לב שכדי לאחזר את הקובץ הזה מ-Cloud Storage, תצטרכו לציין את שם הקטגוריה ואת שם הקובץ. כדאי לאחסן את הערכים האלה באפליקציה לשימוש עתידי.
Java
אפליקציית הדוגמה מציגה דף אינטרנט שמבקש מהמשתמש לספק קובץ לאחסון ב-Cloud Storage. כשהמשתמש בוחר קובץ ולוחץ על 'שליחה', ה-handler של בקשת doPost כותב את הקובץ לקטגוריה של Cloud Storage באמצעות Storage.create.
שימו לב שכדי לאחזר את הקובץ הזה מ-Cloud Storage, תצטרכו לציין את שם הקטגוריה ואת שם הקובץ. כדאי לאחסן את הערכים האלה באפליקציה לשימוש עתידי.
Node.js
אפליקציית הדוגמה מציגה דף אינטרנט שמבקש מהמשתמש לספק קובץ לאחסון ב-Cloud Storage. כשהמשתמש בוחר קובץ ולוחץ על 'שליחה', ה-handler של ההעלאה טוען את תוכן הקובץ ל-blob וכותב אותו ל-Cloud Storage.
שימו לב שאחרי שהקובץ מועלה ל-Cloud Storage, מוחזר כתובת ה-URL הציבורית של הקובץ הזה, שאפשר להשתמש בה כדי להציג את הקובץ ישירות מ-Cloud Storage. כדאי לאחסן את הערך הזה באפליקציה לשימוש עתידי.
PHP
אפליקציית הדוגמה מציגה דף אינטרנט שמבקש מהמשתמש לספק קובץ לאחסון ב-Cloud Storage. כשהמשתמש בוחר קובץ ולוחץ על 'שליחה', ה-handler של ההעלאה טוען את תוכן הקובץ ל-blob וכותב אותו ל-Cloud Storage.
שימו לב שאחרי שהקובץ מועלה ל-Cloud Storage, מוחזר כתובת ה-URL הציבורית של הקובץ הזה, שאפשר להשתמש בה כדי להציג את הקובץ ישירות מ-Cloud Storage. כדאי לאחסן את הערך הזה באפליקציה לשימוש עתידי.
Python
אפליקציית הדוגמה מציגה דף אינטרנט שמבקש מהמשתמש לספק קובץ לאחסון ב-Cloud Storage. כשהמשתמש בוחר קובץ ולוחץ על 'שליחה', ה-handler של ההעלאה טוען את תוכן הקובץ לblob של Cloud Storage וכותב אותו בקטגוריה של Cloud Storage.
שימו לב שאחרי שהקובץ מועלה ל-Cloud Storage, מוחזר כתובת ה-URL הציבורית של הקובץ הזה, שאפשר להשתמש בה כדי להציג את הקובץ ישירות מ-Cloud Storage. כדאי לאחסן את הערך הזה באפליקציה לשימוש עתידי.
Ruby
אפליקציית הדוגמה מציגה דף אינטרנט שמבקש מהמשתמש לספק קובץ לאחסון ב-Cloud Storage. כשהמשתמש בוחר קובץ ולוחץ על 'שליחה', ה-handler של ההעלאה טוען את תוכן הקובץ ל-blob וכותב אותו ל-Cloud Storage.
שימו לב שאחרי שהקובץ מועלה ל-Cloud Storage, מוחזר כתובת ה-URL הציבורית של הקובץ הזה, שאפשר להשתמש בה כדי להציג את הקובץ ישירות מ-Cloud Storage. כדאי לאחסן את הערך הזה באפליקציה לשימוש עתידי.
.NET
אפליקציית הדוגמה מציגה דף אינטרנט שמבקש מהמשתמש לספק קובץ לאחסון ב-Cloud Storage. כשהמשתמש בוחר קובץ ולוחץ על 'שליחה', ה-handler של ההעלאה טוען את תוכן הקובץ ל-blob וכותב אותו ל-Cloud Storage.
שימו לב שאחרי שהקובץ מועלה ל-Cloud Storage, מוחזר כתובת ה-URL הציבורית של הקובץ הזה, שאפשר להשתמש בה כדי להציג את הקובץ ישירות מ-Cloud Storage. כדאי לאחסן את הערך הזה באפליקציה לשימוש עתידי.
למידע נוסף
מידע מלא על Cloud Storage זמין במסמכי העזרה של Cloud Storage.