Ćwiczenie — ponowne wdrażanie aplikacji internetowej w usłudze Azure App Service
W poprzednim ćwiczeniu przedstawiono sposób konfigurowania aplikacji internetowej pod kątem używania wtyczki Maven dla usługi Azure App Service. Projekt Maven jest prawidłowo skonfigurowany i przetestowany. Możesz iterować, ulepszać i ponownie wdrażać aplikację na platformie Azure. Załóżmy na przykład, że chcesz pobrać szczegółowe informacje o tym, gdzie platforma Azure wdrożyła kod aplikacji i ponownie wdrożyć aplikację internetową.
W tym ćwiczeniu zaktualizujesz stronę index.jsp
aplikacji internetowej, aby zawierała pewne informacje o serwerze. Po przetestowaniu tych zmian lokalnie ponownie wdrożysz aplikację internetową na platformie Azure.
Aktualizowanie i testowanie aplikacji internetowej
Użyj
code
, aby edytować stronęindex.jsp
:code ~/MyWebApp/src/main/webapp/index.jsp
Zastąp zawartość tego pliku następującym kodem HTML i wbudowanym kodem Java:
<%@ page import = "java.io.*,java.util.*, jakarta.servlet.*, java.net.InetAddress, java.io.File" %> <html> <head><title>Server Status Page</title></head> <body> <h2>Server name: <% out.print(InetAddress.getLocalHost().getHostName());%></h2> <p><strong>Internal IP Address:</strong> <% out.println(InetAddress.getLocalHost().getHostAddress()); %></p> <p><strong>Free disk space:</strong> <% File file = new File("/"); out.println(file.getFreeSpace()); file = null; %> </p> <p><strong>Free memory: </strong> <% out.println(Runtime.getRuntime().freeMemory()); %> </p> <p><strong>Date: </strong> <% Date date = new Date(); out.print(date.toString()); date = null; %> </p> </body> </html>
Zapisz zmiany, wpisując Ctrl+S.
Zamknij edytor kodu, wpisując Ctrl+Q.
Musisz otworzyć port, aby lokalny serwer internetowy był dostępny w przeglądarce. W usłudze Cloud Shell użyj
curl
:curl -X POST http://localhost:8888/openPort/8000;
Uruchom aplikację lokalnie za pomocą następującego polecenia narzędzia Maven:
mvn package cargo:run
Otwórz nową kartę przeglądarki przy użyciu adresu URL w formacie JSON, dołączając
MyWebApp/
. Powinna zostać wyświetlona nowa strona Stan serwera:Przejdź do wdrożonej aplikacji, wybierając adres URL w powłoce, aby zobaczyć działającą aplikację wdrożoną w usługach App Services.
Zatrzymaj aplikację internetową za pomocą Ctrl+C.
Zamknij otwarty port przy użyciu
curl
.curl -X POST http://localhost:8888/closePort/8000;
Ponowne wdrażanie aplikacji internetowej
Ponownie skompiluj i ponownie wdróż aplikację:
mvn clean package mvn azure-webapp:deploy
Narzędzie Maven wyświetla serię komunikatów kompilacji, a końcowy komunikat powinien wskazywać pomyślne wdrożenie na platformie Azure.
[INFO] Successfully deployed the resources to MyWebApp-1570214065588 [INFO] Trying to deploy artifact to MyWebApp-1570214065588... [INFO] Deploying (/home/cephas/MyWebApp/target/MyWebApp.war)[war] ... [INFO] Application url: https://MyWebApp-1570214065588.azurewebsites.net [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 01:00 min [INFO] Finished at: 2024-05-02T12:58:05Z [INFO] ------------------------------------------------------------------------
Przejdź do wdrożonej aplikacji, wybierając adres URL w powłoce:
Strumieniowanie logów w czasie rzeczywistym
Aplikacja została wdrożona i uruchomiona w usłudze App Service. Jeśli potrzebujesz przeprowadzić diagnostykę, możesz użyć polecenia Azure CLI, aby uzyskać przesyłanie strumieniowe dzienników w czasie rzeczywistym z aplikacji.
az webapp log tail -n <app name> -g "<rgn>[sandbox resource group name]</rgn>"
W następnej lekcji dowiesz się, jak uwierzytelniać wdrożenia aplikacji internetowej w usłudze Azure App Service.