练习 - 部署 Spring Boot 应用程序

已完成

在此单元中,你将通过 Maven 配置要部署的 Spring Boot 应用程序。 然后你将创建并部署到 Azure 应用服务实例。

配置 Maven 插件

指向 Azure 应用服务的部署过程自动使用 Azure CLI 中的 Azure 凭据。

运行以下 Maven 命令以配置部署。 此命令帮助你设置应用服务操作系统、Azure 订阅和 Java 版本。

mvn com.microsoft.azure:azure-webapp-maven-plugin:1.12.0:config
  1. 在出现“订阅”选项提示时,通过在行首输入适当的数字选择订阅。

  2. 在出现“Web 应用”选项提示时,请按 Enter 接受默认选项 <create>

  3. 在出现“OS”选项提示时,请按 Enter 选择 linux

  4. 按 Enter 选择默认 Java 版本 1.8。

  5. 在最后一个提示符处,按 Enter 确认所做的选择。

    Please confirm webapp properties
    AppName : demo-1604579125693
    ResourceGroup : demo-1604579125693-rg
    Region : eastus
    PricingTier : PremiumV2_P1v2
    OS : Linux
    Java : Java 8
    Web server stack: Java SE
    Deploy to slot : false
    Confirm (Y/N) [Y]: Y
    [INFO] Saving configuration to pom.
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  28.781 s
    [INFO] Finished at: 2020-11-05T14:30:00+02:00
    [INFO] ------------------------------------------------------------------------
    

重要

此区域的默认值为 westeurope。 为了获得最佳性能,请将该值更改为 eastus,因为数据库位于该区域。

在项目的 pom.xml 文件中,更改以下字段。

    <configuration>
        ...
        <region>eastus</region>
        ...
    </configuration>

部署应用

Maven 部署插件创建 Azure 应用服务服务器。 它将 JAR 文件复制到应用程序服务器的“/local/site/wwwroot”目录。 最后,该插件通过 Spring Boot JAR 文件的嵌入式 HTTP 服务器来启动你的应用程序。

接下来,使用以下命令将 Spring Boot 应用程序部署到 Azure:

mvn package com.microsoft.azure:azure-webapp-maven-plugin:1.12.0:deploy

此屏幕截图显示部署到 Azure 应用服务的应用程序:

显示已部署的应用程序的屏幕截图。

测试 Azure 应用服务应用程序

部署完成后,应用程序在 http://<appName>.azurewebsites.net/ 就绪。

若要测试应用程序,可以使用 cURL

重新部署应用程序时,你就清除了数据库。 现在你需要在数据库中创建新的待办事项:

curl --header "Content-Type: application/json" \
    --request POST \
    --data '{"description":"configuration","details":"congratulations, you have set up your Spring Boot application correctly!","done": "true"}' \
    http://<appName>.azurewebsites.net

此命令应返回创建的项:

{"id":1,"description":"configuration","details":"congratulations, you have set up your Spring Boot application correctly!","done":true}

使用新的 cURL 请求检索数据:

curl http://<appName>.azurewebsites.net

此命令返回待办事项列表,包括已创建的项目:

[{"id":1,"description":"configuration","details":"congratulations, you have set up your Spring Boot application correctly!","done":true}]

注意

你还可以在 Web 浏览器中打开 URL 以返回待办事项列表。