Tworzenie i uruchamianie aplikacji Spring Boot w Javie w Cloud Shell

1. Zanim zaczniesz

Cloud Shell to narzędzie wiersza poleceń w przeglądarce, 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 utworzysz i uruchomisz aplikację Spring Boot bez opuszczania przeglądarki. W tym celu użyjesz przykładowego kodu z artykułu Tworzenie aplikacji za pomocą Spring Boot.

Wymagania wstępne

  • Znajomość języka programowania Java i narzędzi
  • Znajomość standardowych edytorów tekstu systemu Linux, takich jak Vim, Emacs i nano.

Co musisz zrobić

  • Użyj Cloud Shell.
  • Utwórz prostą aplikację Spring Boot w Cloud Shell.
  • Edytuj aplikację za pomocą edytora kodu w Cloud Shell.
  • Uruchom aplikację w Cloud Shell.

Czego potrzebujesz

2. Konfiguracja i wymagania

Samodzielne konfigurowanie środowiska

  1. Jeśli nie masz jeszcze konta Google, musisz je utworzyć. Zaloguj się w Cloud Console i utwórz nowy projekt.

3c50189ec031c0cf.png

Screenshot from 2016-02-10 12:45:26.png

Zapamiętaj identyfikator projektu, czyli unikalną nazwę we wszystkich projektach Google Cloud (nazwa na obrazie jest już zajęta i nie będzie działać, przepraszamy). W dalszej części tego przewodnika będzie on oznaczany jako PROJECT_ID.

  1. Następnie musisz włączyć płatności w konsoli Google Cloud, aby korzystać z zasobów Google Cloud. Wykonanie tego samouczka nie powinno kosztować więcej niż kilka dolarów, ale może okazać się droższe, jeśli zdecydujesz się wykorzystać więcej zasobów lub pozostawisz je uruchomione.

Nowi użytkownicy Google Cloud mogą skorzystać z bezpłatnego okresu próbnego, w którym mają do dyspozycji środki w wysokości 300 USD.

Cloud Shell

Ta maszyna wirtualna oparta na Debianie zawiera wszystkie potrzebne narzędzia dla programistów. Zawiera również stały katalog domowy o pojemności 5 GB i działa w Google Cloud, co znacznie zwiększa wydajność sieci i usprawnia proces uwierzytelniania. Oznacza to, że do ukończenia tego ćwiczenia potrzebujesz tylko przeglądarki (działa ona na Chromebooku).

  1. Aby aktywować Cloud Shell w konsoli Cloud, kliknij Aktywuj Cloud Shell b125d9eb26a46cc5.png (udostępnienie środowiska i połączenie się z nim powinno zająć tylko kilka chwil).

1067942a9a93f70.png

Screen Shot 2017-06-14 at 10.13.43 PM.png

Po połączeniu z Cloud Shell zobaczysz, że uwierzytelnianie zostało już przeprowadzone, a projekt jest już ustawiony na Twój identyfikator projektu PROJECT_ID.

gcloud auth list

Wynik polecenia

Credentialed accounts:
 - <myaccount>@<mydomain>.com (active)
gcloud config list project

Wynik polecenia

[core]
project = <PROJECT_ID>

Jeśli z jakiegoś powodu projekt nie jest ustawiony, po prostu wydaj to polecenie:

gcloud config set project <PROJECT_ID>

Szukasz urządzenia PROJECT_ID? Sprawdź, jakiego identyfikatora użyto w krokach konfiguracji, lub wyszukaj go w panelu konsoli Cloud:

cc3895eeac80db2c.png

Cloud Shell domyślnie ustawia też niektóre zmienne środowiskowe, które mogą być przydatne podczas wykonywania kolejnych poleceń.

echo $GOOGLE_CLOUD_PROJECT

Wynik polecenia

<PROJECT_ID>
  1. 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ć nową aplikację internetową „Hello, World”.

$ 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, a także pliku pom.xml Maven, otoki Maven i punktu wejścia aplikacji.

4. Tworzenie nowej usługi RESTful za pomocą edytora kodu

  1. W menu Cloud Shell kliknij Otwórz edytor 2109d75686c889a.png, aby otworzyć edytor kodu.
  2. Po otwarciu edytora znajdź plik helloworld/src/main/java/com/example/demo/DemoApplication.java.

f26aa4faf9b35058.png

  1. Po otwarciu kodu utwórz nowy kontroler RESTful, aby odpowiadać na żądania Hello. W pliku DemoApplication.java dodaj nową definicję klasy Helloworld oprócz obecnej.

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!";
        }
}
  1. Zapisz plik.

5. Lokalne uruchamianie aplikacji

  1. Otwórz terminal w edytorze kodu, klikając kolejno TerminalNew Terminal w menu edytora.
  2. Sprawdź, czy JAVA_HOME ma ustawioną prawidłową wersję JDK:
$ export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/
  1. Aplikację Spring Boot możesz uruchomić normalnie za pomocą wtyczki Spring Boot.
$ cd $HOME/helloworld
$ ./mvnw -DskipTests spring-boot:run

a4c65d9e3f7494bf.png

  1. Po uruchomieniu aplikacji kliknij Podgląd w przeglądarce1a94d5bd10bfc072.png na pasku narzędzi Cloud Shell, a następnie kliknij Podejrzyj na porcie 8080.

6252b94905f3f7bd.png

W przeglądarce otworzy się karta, która połączy się z uruchomionym serwerem.

8281cd520b191970.png

6. Gratulacje

Dowiedziałeś się, jak tworzyć i uruchamiać nową aplikację internetową w Javie Spring Boot bezpośrednio z Cloud Shell.

Więcej informacji