Cloud Shell הוא כלי שורת פקודה מבוסס-דפדפן שמאפשר לכם לגשת למשאבי Google Cloud. באמצעות Cloud Shell קל לנהל את הפרויקטים והמשאבים שלכם ב-Cloud Console בלי שתצטרכו להתקין את Cloud SDK וכלי עזר אחרים במערכת.
תשתמשו ב-Cloud Shell כדי ליצור ולהפעיל אפליקציית Spring Boot בלי לצאת מהדפדפן. כדי לעשות את זה, תשתמשו בקוד לדוגמה מתוך יצירת אפליקציה באמצעות Spring Boot.
דרישות מוקדמות
- היכרות עם שפת התכנות Java ועם הכלים שלה
- ידע בכלי עריכת טקסט של Linux, כמו Vim, Emacs ו-nano
מה עושים
- משתמשים ב-Cloud Shell.
- יוצרים אפליקציית Spring Boot פשוטה ב-Cloud Shell.
- עורכים את האפליקציה באמצעות עורך הקוד ב-Cloud Shell.
- מפעילים את האפליקציה מ-Cloud Shell.
מה צריך להכין
- פרויקט ב-Google Cloud
- דפדפן, כמו Google Chrome
הגדרת סביבה בקצב אישי
- אם עדיין אין לכם חשבון Google, אתם צריכים ליצור חשבון. נכנסים ל-Cloud Console ויוצרים פרויקט חדש.
חשוב לזכור את מזהה הפרויקט, שהוא שם ייחודי בכל הפרויקטים ב-Google Cloud (השם שמופיע בתמונה כבר תפוס ולא יתאים לכם, מצטערים!). בהמשך ה-codelab נתייחס אליו כאל PROJECT_ID
.
- לאחר מכן, כדי להשתמש במשאבים של Google Cloud, צריך להפעיל את החיוב במסוף Cloud. העלות של ההשתתפות בסדנת ה-codelab לא אמורה להיות גבוהה מכמה דולרים, אבל היא יכולה להיות גבוהה יותר אם תחליטו להשתמש ביותר משאבים או אם תשאירו אותם פועלים.
משתמשים חדשים ב-Google Cloud זכאים לתקופת ניסיון בחינם בשווי 300$.
Cloud Shell
המכונה הווירטואלית הזו מבוססת על Debian, וטעונים בה כל הכלים הדרושים למפתחים. יש בה ספריית בית בנפח מתמיד של 5GB והיא פועלת ב-Google Cloud, מה שמשפר מאוד את הביצועים והאימות ברשת. כלומר, כל מה שצריך בשביל ה-codelab הזה הוא דפדפן (כן, הוא עובד ב-Chromebook).
- כדי להפעיל את Cloud Shell מ-Cloud Console, פשוט לוחצים על Activate Cloud Shell
(הקצאת המשאבים והחיבור לסביבה אמורים להימשך רק כמה רגעים).
אחרי שמתחברים ל-Cloud Shell, אמור להופיע אימות שכבר בוצע, והפרויקט כבר מוגדר ל-PROJECT_ID
.
gcloud auth list
פלט הפקודה
Credentialed accounts: - <myaccount>@<mydomain>.com (active)
gcloud config list project
פלט הפקודה
[core] project = <PROJECT_ID>
ב-Cloud Shell מוגדרים גם כמה משתני סביבה כברירת מחדל, שיכולים להיות שימושיים כשמריצים פקודות בעתיד.
echo $GOOGLE_CLOUD_PROJECT
פלט הפקודה
<PROJECT_ID>
אם הפרויקט לא מוגדר מסיבה כלשהי, פשוט מריצים את הפקודה הבאה:
gcloud config set project <PROJECT_ID>
מחפשים את PROJECT_ID
? כדאי לבדוק באיזה מזהה השתמשתם בשלבי ההגדרה, או לחפש אותו בלוח הבקרה של Cloud Console.
- לבסוף, מגדירים את אזור ברירת המחדל ואת הגדרת הפרויקט.
gcloud config set compute/zone us-central1-f
אפשר לבחור מתוך מגוון אזורים שונים. מידע נוסף זמין במאמר אזורים ותחומים.
אחרי שמתקינים את כלי שורת הפקודה של Spring Boot, אפשר לאתחל ולהפעיל אפליקציית אינטרנט חדשה מסוג Hello, World.
$ curl https://start.spring.io/starter.tgz \ -d dependencies=web -d baseDir=helloworld | tar -xzvf -
הפעולה הזו יוצרת ספרייה חדשה עם פרויקט Maven חדש, בנוסף ל-pom.xml
של Maven, ל-Maven Wrapper ולנקודת כניסה לאפליקציה.
- פותחים את עורך הקוד על ידי לחיצה על הפעלת העורך
בתפריט 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!";
}
}
- שומרים את הקובץ.
- אפשר להפעיל את אפליקציית Spring Boot כרגיל באמצעות הפלאגין Spring Boot.
$ cd $HOME/helloworld $ ./mvnw -DskipTests spring-boot:run
- אחרי שהאפליקציה מתחילה לפעול, לוחצים על תצוגה מקדימה באינטרנט
בסרגל הכלים של Cloud Shell, ואז על תצוגה מקדימה ביציאה 8080.
תיפתח כרטיסייה בדפדפן והיא תתחבר לשרת שהפעלתם.
למדתם איך ליצור ולהשיק אפליקציית אינטרנט חדשה ב-Java עם Spring Boot ישירות מ-Cloud Shell.