เกี่ยวกับ Codelab นี้
1 ข้อควรทราบก่อนที่จะเริ่มต้น
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
2 การตั้งค่าและข้อกําหนด
การตั้งค่าสภาพแวดล้อมด้วยตนเอง
- หากยังไม่มีบัญชี Google คุณต้องสร้างบัญชี ลงชื่อเข้าใช้ Cloud Console และสร้างโปรเจ็กต์ใหม่
อย่าลืมชื่อรหัสโปรเจ็กต์ ซึ่งเป็นชื่อที่ไม่ซ้ํากันสําหรับโปรเจ็กต์ Google Cloud ทั้งหมด (ชื่อในรูปภาพมีคนใช้แล้วและคุณจะใช้ไม่ได้) และจะเรียกใน Codelab ว่า PROJECT_ID
ในภายหลัง
- หลังจากนั้นคุณต้องเปิดใช้การเรียกเก็บเงินใน Cloud Console เพื่อใช้ทรัพยากรของ Google Cloud การเรียกใช้ Codelab ไม่ควรมีค่าใช้จ่ายมากกว่า 2-3 ดอลลาร์ แต่อาจมากกว่านั้นหากคุณตัดสินใจใช้ทรัพยากรเพิ่มเติมหรือปล่อยให้ทรัพยากรทํางาน
ผู้ใช้ใหม่ของ Google Cloud มีสิทธิ์รับช่วงทดลองใช้ฟรี $300
Cloud Shell
เครื่องเสมือนบน Debian นี้เต็มไปด้วยเครื่องมือการพัฒนาทั้งหมดที่คุณต้องการ โดยมีไดเรกทอรีหน้าแรกขนาด 5 GB ถาวรและทํางานอยู่ใน Google Cloud ซึ่งช่วยปรับปรุงประสิทธิภาพและการตรวจสอบสิทธิ์ของเครือข่ายได้อย่างมาก ซึ่งหมายความว่า เพียงแค่ใช้ Codelab นี้ คุณก็สามารถใช้เบราว์เซอร์ได้ (ใช่บนอุปกรณ์ Chromebook)
- หากต้องการเปิดใช้งาน Cloud Shell จาก Cloud Console เพียงคลิกเปิดใช้งาน 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
คุณเลือกได้หลายโซน ดูข้อมูลเพิ่มเติมได้ที่ภูมิภาคและภูมิภาค
3 เริ่มต้นแอป Spring Boot ใหม่
หลังจากติดตั้งเครื่องมือบรรทัดคําสั่ง Spring Boot แล้ว คุณจะเริ่มและบูตเว็บแอป " Hello, World" ใหม่ได้
$ curl https://start.spring.io/starter.tgz \ -d dependencies=web -d baseDir=helloworld | tar -xzvf -
ไดเรกทอรีดังกล่าวจะสร้างโปรเจ็กต์ใหม่ที่มีโปรเจ็กต์ Maven ใหม่ รวมถึง pom.xml
, #Wrapper ของ Maven และจุดเข้าใช้งานของแอป
4 สร้างบริการ RESTful ใหม่ด้วยตัวแก้ไขโค้ด
- เปิดตัวแก้ไขโค้ดโดยคลิกเปิดเครื่องมือแก้ไข
ในเมนู 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 เรียกใช้แอปในเครื่อง
- คุณเริ่มใช้แอป Spring Boot ได้ตามปกติด้วยปลั๊กอิน Spring Boot
$ cd $HOME/helloworld $ ./mvnw -DskipTests spring-boot:run
- หลังจากแอปเริ่มทํางาน ให้คลิกแสดงตัวอย่างเว็บ
ในแถบเครื่องมือ Cloud Shell จากนั้นคลิกแสดงตัวอย่างบนพอร์ต 8080
แท็บในเบราว์เซอร์จะเปิดและเชื่อมต่อกับเซิร์ฟเวอร์ที่คุณเริ่มต้น
6 ยินดีด้วย
คุณได้เรียนรู้วิธีสร้างและเปิดตัวเว็บแอป Java Spring Boot ใหม่โดยตรงจาก Cloud Shell