练习 - 将 Web 应用重新部署到 Azure 应用服务
在上一练习中,你学习了如何将 Web 应用配置为使用适用于 Azure 应用服务的 Maven 插件。 您的 Maven 项目已配置正确并经过测试。 可以迭代、改进并将应用程序重新部署到 Azure。 例如,假设要检索有关 Azure 部署应用程序代码的位置和重新部署 Web 应用的一些特定详细信息。
在本次练习中,你将更新你的网络应用程序的index.jsp
页面,以包括有关服务器的信息。 在本地测试这些更改后,你将将 Web 应用重新部署到 Azure。
更新和测试 Web 应用
使用
code
来编辑index.jsp
页面。code ~/MyWebApp/src/main/webapp/index.jsp
将此文件的内容替换为以下 HTML 和内联 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>
键入 Ctrl+S 保存更改。
键入 Ctrl+Q 退出代码编辑器。
需要打开一个端口,以使本地 Web 服务器可用于在浏览器中查看。 在 Cloud Shell 中,使用
curl
:curl -X POST http://localhost:8888/openPort/8000;
使用以下 Maven 命令在本地运行应用:
mvn package cargo:run
使用 JSON 中的 URL 打开新的浏览器选项卡,并在其后附加
MyWebApp/
。 应会看到新的“服务器状态”页:通过选择 shell 中的 URL 来访问已部署的应用,以查看在应用服务上运行的已部署应用。
使用 Ctrl+C 停止 Web 应用。
使用
curl
. 关闭打开的端口。curl -X POST http://localhost:8888/closePort/8000;
重新部署 Web 应用
重新生成并重新部署应用:
mvn clean package mvn azure-webapp:deploy
Maven 显示一系列生成消息,最终消息应指示成功部署到 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] ------------------------------------------------------------------------
通过选择 shell 中的 URL 访问已部署的应用:
实时流式传输日志
现已在应用服务上部署并运行应用。 如果需要进行故障排除,可以使用此 Azure CLI 命令从应用程序获取实时日志流:
az webapp log tail -n <app name> -g "<rgn>[sandbox resource group name]</rgn>"
在下一单元中,你将了解如何向 Azure 应用服务验证 Web 应用部署。