Tworzenie i uruchamianie aplikacji Spring Boot w Javie w Cloud Shell

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

2. Konfiguracja i wymagania

Samodzielne konfigurowanie środowiska

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

3c50189ec031c0cf.png

Zrzut ekranu z 10.02.2016, 12:45:26.png

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.

  1. 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).

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

1067942a9a93f70.png

Zrzut ekranu 2017-06-14 o 10.13.43 PM.png

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:

cc3895eeac80db2c.png

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>
  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ć 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

  1. Otwórz edytor kodu, klikając Otwórz edytor 2109d75686c889a.png w menu Cloud Shell.
  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 REST, aby zareagować Hello. W pliku DemoApplication.java dodaj nową definicję klasy Helloworld 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!";
        }
}
  1. Zapisz plik.

5. Uruchamianie aplikacji lokalnie

  1. Otwórz terminal w edytorze kodu, wybierając Terminal, a następnie New Terminal z menu edytora.
  2. Sprawdź, czy JAVA_HOME ma prawidłową wersję pakietu JDK:
$ export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/
  1. 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

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 i nawiążesz połączenie z uruchomionym serwerem.

8281cd520b191970.png

6. Gratulacje

Udało Ci się utworzyć i uruchomić nową aplikację internetową Spring Boot w języku Java bezpośrednio z Cloud Shell.

Więcej informacji