1. לפני שמתחילים
Cloud Shell הוא כלי שורת פקודה מבוסס-דפדפן שמאפשר לגשת למשאבים של Google Cloud. בעזרת Cloud Shell קל לנהל את הפרויקטים והמשאבים ב-Cloud Console, בלי להתקין את Cloud SDK וכלים אחרים במערכת.
תשתמשו ב-Cloud Shell כדי ליצור ולהפעיל אפליקציית Springboot מבלי לצאת מהדפדפן. כדי לעשות זאת, צריך להשתמש בקוד לדוגמה מבניית אפליקציה באמצעות אתחול אביב.
דרישות מוקדמות
- היכרות עם שפת התכנות והכלים של Java
- ידע בעורכי טקסט סטנדרטיים של Linux, כגון Vim, Emacs ו-nano
מה תעשו
- שימוש ב-Cloud Shell.
- יוצרים אפליקציה פשוטה לאתחול Spring ב-Cloud Shell.
- עורכים את האפליקציה באמצעות עורך הקוד ב-Cloud Shell.
- מפעילים את האפליקציה מ-Cloud Shell.
מה צריך להכין
- פרויקט ב-Google Cloud
- דפדפן, למשל Google Chrome
2. הגדרה ודרישות
הגדרת סביבה בקצב עצמאי
- אם עדיין אין לכם חשבון Google, עליכם ליצור חשבון. נכנסים למסוף Cloud ויוצרים פרויקט חדש.
חשוב לזכור את מזהה הפרויקט, שם ייחודי לכל הפרויקטים ב-Google Cloud (סליחה, השם בתמונה כבר תפוס ולא יעבוד בשבילכם!). בהמשך ב-Codelab, המערכת תתייחס אליה בתור PROJECT_ID
.
- לאחר מכן, צריך להפעיל את החיוב במסוף Cloud כדי להשתמש במשאבים של Google Cloud. ההרצה של Codelab לא אמורה לעלות לך יותר מכמה דולרים, אבל זה יכול להיות גבוה יותר אם תחליטו להשתמש במשאבים רבים יותר או אם תשאירו אותם פועלים.
משתמשים חדשים ב-Google Cloud זכאים לתקופת ניסיון בחינם בשווי 300$.
Cloud Shell
המכונה הווירטואלית הזו שמבוססת על Debian נטענת עם כל הכלים למפתחים שדרושים לכם. יש בה ספריית בית בנפח מתמיד של 5GB והיא פועלת ב-Google Cloud, מה שמשפר משמעותית את ביצועי הרשת והאימות. כלומר, כל מה שדרוש ל-Codelab הזה הוא דפדפן (כן, הוא פועל ב-Chromebook).
- כדי להפעיל את Cloud Shell ממסוף Cloud, לוחצים על Activate Cloud Shell (ההקצאה וההתחברות לסביבה אמורות להימשך כמה דקות).
אחרי ההתחברות ל-Cloud Shell, אתם אמורים לראות שכבר בוצע אימות ושהפרויקט כבר מוגדר ל-PROJECT_ID
שלכם.
gcloud auth list
פלט הפקודה
Credentialed accounts: - <myaccount>@<mydomain>.com (active)
gcloud config list project
פלט הפקודה
[core] project = <PROJECT_ID>
אם מסיבה כלשהי הפרויקט לא מוגדר, פשוט מריצים את הפקודה הבאה:
gcloud config set project <PROJECT_ID>
רוצה למצוא את ה-PROJECT_ID
שלך? אתם יכולים לבדוק באיזה מזהה השתמשתם בשלבי ההגדרה או לחפש אותו במרכז הבקרה של מסוף Cloud:
Cloud Shell גם מגדירה משתני סביבה כברירת מחדל, והוא יכול להיות שימושי כשמריצים פקודות עתידיות.
echo $GOOGLE_CLOUD_PROJECT
פלט הפקודה
<PROJECT_ID>
- בשלב האחרון, מגדירים את ברירת המחדל של האזור והפרויקט.
gcloud config set compute/zone us-central1-f
אפשר לבחור מגוון אזורים שונים. מידע נוסף זמין במאמר אזורים ו אזורים.
3. אתחול אפליקציה חדשה של Springboo
לאחר התקנת כלי שורת הפקודה Spring Boot, ניתן לאתחל ולבצע אתחול מסוג "Hello, World" [שלום, עולם] חדש בדפדפן.
$ curl https://start.spring.io/starter.tgz \ -d dependencies=web \ -d type=maven-project \ -d baseDir=helloworld | tar -xzvf -
כך נוצרת ספרייה חדשה עם פרויקט Maven חדש, יחד עם pom.xml
של Maven, wrapper של Maven ונקודת כניסה לאפליקציה.
4. יצירה של שירות RESTful חדש באמצעות עורך הקוד
- כדי לפתוח את עורך הקוד, לוחצים על Open Editor בתפריט של Cloud Shell.
- לאחר פתיחת העורך, מוצאים את הקובץ
helloworld/src/main/java/com/example/demo/DemoApplication.java
.
- אחרי שהקוד נפתח, צריך ליצור בקר RESTful חדש כדי להגיב ל-
Hello
. בקובץDemoApplication.java
, צריך להוסיף הגדרה חדשה של מחלקהHelloworld
בנוסף להגדרה הנוכחית.
src/main/java/com/example/demo/DemoApplication.java
package com.example;
...
// Add the import
import org.springframework.web.bind.annotation.*;
@SpringBootApplication
public class DemoApplication {
...
}
// Add the controller
@RestController
class Helloworld {
@GetMapping("/")
public String greet() {
return "Hello!";
}
}
- שומרים את הקובץ.
5. הפעלה מקומית של האפליקציה
- כדי לפתוח טרמינל בעורך הקוד, בוחרים באפשרות
Terminal
ואז באפשרותNew Terminal
בתפריט העריכה. - צריך לוודא שבמכשיר
JAVA_HOME
מוגדרת גרסת ה-JDK הנכונה:
$ export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/
- אפשר להפעיל את אפליקציית Spring Boot כרגיל באמצעות הפלאגין Spring Boot.
$ cd $HOME/helloworld $ ./mvnw -DskipTests spring-boot:run
- אחרי שהאפליקציה מתחילה, לוחצים על Web Preview בסרגל הכלים של Cloud Shell, ואז לוחצים על Preview on Port 8080.
כרטיסייה בדפדפן נפתחת ומתחברת לשרת שהתחלתם.
6. מזל טוב
למדתם לפתח ולהשיק אפליקציית אינטרנט חדשה של Spring Boot Java ישירות מ-Cloud Shell.