Übung: Erneutes Bereitstellen Ihrer Web-App in Azure App Service
In der vorherigen Übung haben Sie erfahren, wie Sie Ihre Web-App zum Verwenden des Maven-Plug-Ins für Azure App Service konfigurieren. Ihr Maven-Projekt wurde ordnungsgemäß konfiguriert und getestet. Sie können Ihre App durchlaufen, verbessern und erneut in Azure bereitstellen. Angenommen Sie möchten spezifische Informationen darüber abrufen, wo Azure Ihren Anwendungscode bereitgestellt hat, und Ihre Web-App dann wieder bereitstellen.
In dieser Übung aktualisieren Sie die index.jsp
-Seite Ihrer Web-App, damit diese Informationen zum Server enthält. Nachdem Sie diese Änderungen lokal getestet haben, stellen Sie Ihre Web-App wieder in Azure bereit.
Aktualisieren und Testen Ihrer Web-App
Verwenden Sie
code
zum Bearbeiten Ihrerindex.jsp
-Seite:code ~/MyWebApp/src/main/webapp/index.jsp
Ersetzen Sie die Inhalte dieser Datei durch den folgenden HTML-Code und Java-Inlinecode:
<%@ 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>
Speichern Sie Ihre Änderungen, indem Sie STRG+S drücken.
Schließen Sie den Code-Editor, indem Sie STRG+Q drücken.
Sie müssen einen Port öffnen, um den lokalen Webserver zum Anzeigen in einem Browser zur Verfügung zu stellen. Verwenden Sie
curl
in Cloud Shell:curl -X POST http://localhost:8888/openPort/8000;
Führen Sie die App mit dem folgenden Maven-Befehl lokal aus:
mvn package cargo:run
Öffnen Sie eine neue Browserregisterkarte, fügen Sie die URL aus dem zurückgegebenen JSON-Objekt ein, und fügen Sie
MyWebApp/
an das Ende der URL an. Die neue Serverstatusseite sollte angezeigt werden:Navigieren Sie zur bereitgestellten App, indem Sie auf die URL in der Shell klicken, um die bereitgestellte App anzuzeigen, die auf App Services ausgeführt wird.
Beenden Sie die Web-App mit STRG+C.
Schließen Sie den geöffneten Port mithilfe von
curl
.curl -X POST http://localhost:8888/closePort/8000;
Erneutes Bereitstellen der Web-App
Erstellen Sie die App erneut, und stellen Sie sie erneut bereit:
mvn clean package mvn azure-webapp:deploy
Maven zeigt mehrere Buildmeldungen an, und die letzte Meldung sollte auf eine erfolgreiche Bereitstellung in Azure hinweisen.
[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] ------------------------------------------------------------------------
Navigieren Sie zur bereitgestellten App, indem Sie auf die URL in der Shell klicken:
Streamen von Protokollen in Echtzeit
Sie haben Ihre App auf App Service bereitgestellt und ausgeführt. Wenn Sie Probleme beheben müssen, können Sie diesen Azure CLI-Befehl verwenden, um das Echtzeitprotokollstreaming über die App abzurufen:
az webapp log tail -n <app name> -g "<rgn>[sandbox resource group name]</rgn>"
In der nächsten Lerneinheit erfahren Sie, wie Sie Ihre Web-App-Bereitstellungen bei Azure App Service authentifizieren.