Wdrażanie aplikacji Spring Boot przy użyciu narzędzia Maven
Uwaga
Plany Podstawowa, Standardowa i Enterprise zostaną wycofane od połowy marca 2025 r. z 3-letnim okresem emerytalnym. Zalecamy przejście do usługi Azure Container Apps. Aby uzyskać więcej informacji, zobacz ogłoszenie o wycofaniu usługi Azure Spring Apps.
Zużycie standardowe i dedykowany plan zostaną wycofane od 30 września 2024 r. z całkowitym zamknięciem po sześciu miesiącach. Zalecamy przejście do usługi Azure Container Apps. Aby uzyskać więcej informacji, zobacz Migrowanie użycia usługi Azure Spring Apps w warstwie Standardowa i dedykowanego planu do usługi Azure Container Apps.
Ten artykuł dotyczy:✅ Java ❎ C#
Ten artykuł dotyczy:✅ Podstawowa/Standardowa ✅ Enterprise
W tym artykule pokazano, jak używać wtyczki Azure Spring Apps Maven do konfigurowania i wdrażania aplikacji w usłudze Azure Spring Apps.
Wymagania wstępne
- Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
- Już aprowizowane wystąpienie usługi Azure Spring Apps.
- JDK 8 lub JDK 11
- Apache Maven
- Interfejs wiersza polecenia platformy Azure w wersji 2.45.0 lub nowszej z rozszerzeniem Azure Spring Apps. Rozszerzenie można zainstalować za pomocą następującego polecenia:
az extension add --name spring
Generowanie projektu Spring
Aby utworzyć projekt Spring do użycia w tym artykule, wykonaj następujące kroki:
Przejdź do witryny Spring Initializr , aby wygenerować przykładowy projekt z zalecanymi zależnościami dla usługi Azure Spring Apps. Ten link używa następującego adresu URL, aby podać ustawienia domyślne.
https://start.spring.io/#!type=maven-project&language=java&platformVersion=2.5.7&packaging=jar&jvmVersion=1.8&groupId=com.example&artifactId=hellospring&name=hellospring&description=Demo%20project%20for%20Spring%20Boot&packageName=com.example.hellospring&dependencies=web,cloud-eureka,actuator,cloud-config-client
Na poniższej ilustracji przedstawiono zalecaną konfigurację narzędzia Spring Initializr dla tego przykładowego projektu.
W tym przykładzie użyto języka Java w wersji 8. Jeśli chcesz użyć języka Java w wersji 11, zmień opcję w obszarze Metadane projektu.
Wybierz pozycję Generuj , gdy zostaną ustawione wszystkie zależności.
Pobierz i rozpakuj pakiet, a następnie utwórz kontroler sieci Web dla aplikacji internetowej. Dodaj plik src/main/java/com/example/hellospring/HelloController.java z następującą zawartością:
package com.example.hellospring; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RequestMapping; @RestController public class HelloController { @RequestMapping("/") public String index() { return "Greetings from Azure Spring Apps!"; } }
Lokalne kompilowanie aplikacji Spring
Aby skompilować projekt przy użyciu narzędzia Maven, uruchom następujące polecenia:
cd hellospring
mvn clean package -DskipTests -Denv=cloud
Kompilowanie projektu trwa kilka minut. Po zakończeniu należy mieć poszczególne pliki JAR dla każdej usługi w odpowiednich folderach.
Aprowizuj wystąpienie usługi Azure Spring Apps
Poniższa procedura tworzy wystąpienie usługi Azure Spring Apps przy użyciu witryny Azure Portal.
Na nowej karcie otwórz witrynę Azure Portal.
W górnym polu wyszukiwania wyszukaj pozycję Azure Spring Apps.
Wybierz pozycję Azure Spring Apps z wyników.
Na stronie Azure Spring Apps wybierz pozycję Utwórz.
Wypełnij formularz na stronie Tworzenie usługi Azure Spring Apps. Należy uwzględnić następujące wytyczne:
- Subskrypcja: wybierz subskrypcję, którą chcesz rozliczać za ten zasób.
- Grupa zasobów: Tworzenie nowych grup zasobów dla nowych zasobów jest najlepszym rozwiązaniem. Ta grupa zasobów będzie używana w kolejnych krokach jako <nazwa> grupy zasobów.
- Szczegóły usługi/nazwa: określ <nazwę> wystąpienia usługi. Nazwa musi mieć długość od 4 do 32 znaków i może zawierać tylko małe litery, cyfry i łączniki. Pierwszy znak nazwy usługi musi być literą, a ostatni znak musi być literą lub cyfrą.
- Lokalizacja: wybierz region wystąpienia usługi.
Wybierz opcję Przejrzyj i utwórz.
Generowanie konfiguracji i wdrażanie w usłudze Azure Spring Apps
Aby wygenerować konfiguracje i wdrożyć aplikację, wykonaj następujące kroki:
Uruchom następujące polecenie z folderu głównego hellospring , który zawiera plik POM. Jeśli zalogowaliśmy się już za pomocą interfejsu wiersza polecenia platformy Azure, polecenie automatycznie pobiera poświadczenia. W przeciwnym razie polecenie wyświetli monit z instrukcjami logowania. Aby uzyskać więcej informacji, zobacz Authentication in the azure-maven-plugins repository on GitHub (Uwierzytelnianie w repozytorium azure-maven-plugins w witrynie GitHub).
mvn com.microsoft.azure:azure-spring-apps-maven-plugin:1.10.0:config
Zostanie wyświetlony monit o wybranie:
- Identyfikator subskrypcji — subskrypcja użyta do utworzenia wystąpienia usługi Azure Spring Apps.
- Wystąpienie usługi — nazwa wystąpienia usługi Azure Spring Apps.
- Nazwa aplikacji — wybrana nazwa aplikacji lub użyj wartości
artifactId
domyślnej . - Publiczny punkt końcowy - true uwidacznia aplikację do dostępu publicznego; w przeciwnym razie wartość false.
Sprawdź,
appName
czy element w pliku POM ma poprawną wartość. Odpowiednia część pliku POM powinna wyglądać podobnie do poniższego przykładu.<build> <plugins> <plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-spring-apps-maven-plugin</artifactId> <version>1.10.0</version> <configuration> <subscriptionId>xxxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx</subscriptionId> <clusterName>v-spr-cld</clusterName> <appName>hellospring</appName>
Plik POM zawiera teraz zależności i konfiguracje wtyczki.
Wdróż aplikację przy użyciu następującego polecenia.
mvn azure-spring-apps:deploy
Weryfikowanie usług
Po zakończeniu wdrażania możesz uzyskać dostęp do aplikacji pod adresem https://<service instance name>-hellospring.azuremicroservices.io/
.
Czyszczenie zasobów
Jeśli planujesz kontynuować pracę z przykładowej aplikacji, możesz chcieć pozostawić zasoby na miejscu. Jeśli grupa zasobów nie będzie już potrzebna, usuń grupę zasobów zawierającą wystąpienie usługi Azure Spring Apps. Aby usunąć grupę zasobów przy użyciu interfejsu wiersza polecenia platformy Azure, użyj następujących poleceń:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."