1. Zanim zaczniesz
Cloud Shell to działające w przeglądarce narzędzie wiersza poleceń, które umożliwia dostęp do zasobów Google Cloud. Cloud Shell ułatwia zarządzanie projektami i zasobami Cloud Console bez konieczności instalowania w systemie pakietu SDK Cloud i innych narzędzi.
Za pomocą Cloud Shell stworzysz i uruchomisz aplikację Spring Boot bez opuszczania przeglądarki. Użyjesz do tego przykładowego kodu z artykułu Tworzenie aplikacji przy użyciu Spring Boot.
Wymagania wstępne
- Znajomość języka programowania i narzędzi Java
- znajomości standardowych edytorów tekstu systemu Linux, takich jak Vim, Emacs czy nano;
Co trzeba zrobić
- Użyj Cloud Shell.
- utworzyć prostą aplikację Spring Boot w Cloud Shell,
- Edytuj aplikację za pomocą edytora kodu w Cloud Shell.
- Uruchom aplikację z Cloud Shell.
Czego potrzebujesz
- Projekt Google Cloud
- przeglądarki, np. Google Chrome;
2. Konfiguracja i wymagania
Samodzielne konfigurowanie środowiska
- Jeśli nie masz jeszcze konta Google, musisz je utworzyć. Zaloguj się w konsoli Cloud i utwórz nowy projekt.
Zapamiętaj identyfikator projektu, unikalną nazwę we wszystkich projektach Google Cloud (nazwa z obrazu jest już zajęta i nie będzie Ci odpowiadać). W dalszej części ćwiczenia z programowania będzie ona określana jako PROJECT_ID
.
- Następnie musisz włączyć płatności w Cloud Console, aby korzystać z zasobów Google Cloud. Ćwiczenia z programowania nie powinny kosztować więcej niż kilka dolarów, ale może być droższe, jeśli zdecydujesz się użyć więcej zasobów lub w ogóle je pozostawić.
Nowi użytkownicy Google Cloud mogą skorzystać z bezpłatnego okresu próbnego o wartości 300 USD.
Cloud Shell
Ta maszyna wirtualna oparta na Debianie zawiera wszystkie potrzebne narzędzia dla programistów. Zawiera stały katalog domowy o pojemności 5 GB i działa w Google Cloud, co znacznie zwiększa wydajność sieci i uwierzytelnianie. Oznacza to, że do tego ćwiczenia z programowania wystarczy przeglądarka (tak, działa ona na Chromebooku).
- Aby aktywować Cloud Shell z poziomu konsoli Cloud, kliknij Aktywuj Cloud Shell (udostępnienie środowiska i połączenie z nim powinno zająć tylko chwilę).
Po nawiązaniu połączenia z Cloud Shell powinno pojawić się potwierdzenie, że użytkownik jest już uwierzytelniony, a projekt jest już ustawiony na PROJECT_ID
.
gcloud auth list
Dane wyjściowe polecenia
Credentialed accounts: - <myaccount>@<mydomain>.com (active)
gcloud config list project
Dane wyjściowe polecenia
[core] project = <PROJECT_ID>
Jeśli z jakiegoś powodu projekt nie jest skonfigurowany, uruchom po prostu to polecenie:
gcloud config set project <PROJECT_ID>
Szukasz urządzenia PROJECT_ID
? Sprawdź identyfikator użyty w krokach konfiguracji lub wyszukaj go w panelu Cloud Console:
Cloud Shell ustawia też domyślnie niektóre zmienne środowiskowe, które mogą być przydatne podczas uruchamiania kolejnych poleceń.
echo $GOOGLE_CLOUD_PROJECT
Dane wyjściowe polecenia
<PROJECT_ID>
- Na koniec ustaw domyślną strefę i konfigurację projektu.
gcloud config set compute/zone us-central1-f
Możesz wybrać różne strefy. Więcej informacji znajdziesz w artykule Regiony i Strefy.
3. Inicjowanie nowej aplikacji Spring Boot
Po zainstalowaniu narzędzia wiersza poleceń Spring Boot możesz zainicjować i uruchomić nowy interfejs „Hello, World” aplikacji internetowej.
$ curl https://start.spring.io/starter.tgz \ -d dependencies=web \ -d type=maven-project \ -d baseDir=helloworld | tar -xzvf -
Spowoduje to utworzenie nowego katalogu z nowym projektem Maven wraz z narzędziem pom.xml
Maven, kodem Maven i punktem wejścia aplikacji.
4. Tworzenie nowej usługi REST za pomocą edytora kodu
- Otwórz edytor kodu, klikając Otwórz edytor w menu Cloud Shell.
- Po otwarciu edytora znajdź plik
helloworld/src/main/java/com/example/demo/DemoApplication.java
.
- Po otwarciu kodu utwórz nowy kontroler REST, aby zareagować
Hello
. W plikuDemoApplication.java
dodaj nową definicję klasyHelloworld
oprócz bieżącej.
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!";
}
}
- Zapisz plik.
5. Uruchamianie aplikacji lokalnie
- Otwórz terminal w edytorze kodu, wybierając
Terminal
, a następnieNew Terminal
z menu edytora. - Sprawdź, czy
JAVA_HOME
ma prawidłową wersję pakietu JDK:
$ export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/
- Aplikację Spring Boot możesz uruchomić w zwykły sposób, używając wtyczki Spring Boot.
$ cd $HOME/helloworld $ ./mvnw -DskipTests spring-boot:run
- Po uruchomieniu aplikacji kliknij Podgląd w przeglądarce na pasku narzędzi Cloud Shell, a następnie kliknij Podejrzyj na porcie 8080.
W przeglądarce otworzy się karta i nawiążesz połączenie z uruchomionym serwerem.
6. Gratulacje
Udało Ci się utworzyć i uruchomić nową aplikację internetową Spring Boot w języku Java bezpośrednio z Cloud Shell.