快速入门:生成并部署到 Java Web 应用

Azure DevOps服务

在本快速入门中,你将创建一个 Azure Pipeline,用于生成 Java 应用并将其部署到 Linux 上的 Azure 应用服务。 完成后,只要将更改推送到存储库,就会有一个工作 CI/CD 管道,该管道会自动生成和部署应用。

可以使用 Tomcat 或 Java SE 作为运行时。

小提示

如果只想生成 Java 应用,请参阅 生成 Java 应用。

先决条件

产品 要求
Azure DevOps - 一个 Azure DevOps 项目。
- 能够在Microsoft托管代理上运行管道。 启用免费层,或购买 并行作业。
- 对 YAML 和 Azure Pipelines 的基本知识。 有关详细信息,请参阅创建第一个管道。
- 权限:
     - 若要创建管道:必须位于 “参与者 ”组中,并且该组需要将 “创建生成管道 ”权限设置为“允许”。 项目管理员组的成员可以管理管道。
    - 若要创建服务连接:必须具有服务连接的管理员或创建者角色。
GitHub - GitHub 帐户。
- 用于授权 Azure Pipelines 的 GitHub 服务连接 。
天蓝色 一个 Azure 订阅。
产品 要求
Azure DevOps - 一个 Azure DevOps 项目。
- 自托管代理。 若要创建一个代理,请参阅自托管代理。
- 对 YAML 和 Azure Pipelines 的基本知识。 有关详细信息,请参阅创建第一个管道。
- 权限:
    - 若要创建管道:必须位于 “参与者 ”组中,并且该组需要将 “创建生成管道 ”权限设置为“允许”。 项目管理员组的成员可以管理管道。
    - 若要创建服务连接:必须具有服务连接的管理员或创建者角色。
GitHub - GitHub 帐户。
- 用于授权 Azure Pipelines 的 GitHub 服务连接 。
天蓝色 一个 Azure 订阅。

获取代码

选择要使用的运行时。

如果 GitHub 中已有要部署的应用,则可以为该代码创建管道。

如果你是新用户,请在 GitHub 中为此存储库创建分支:

https://github.com/spring-petclinic/spring-framework-petclinic

创建应用服务计划和应用

登录到 Azure 门户,然后选择右上角的 Cloud Shell 按钮。

在 Linux 上创建应用服务计划和 Web 应用。

# Create a resource group to organize and manage related Azure resources
az group create --location eastus2 --name myapp-rg

# Create an App Service plan with Linux as the operating system
# The plan defines the compute resources for your web app
az appservice plan create -g myapp-rg -n myapp-service-plan --is-linux

# Create a web app using the App Service plan
# Configure Tomcat 10.1 with Java 17 as the runtime environment
az webapp create -g myapp-rg -p myapp-service-plan -n my-app-name --runtime "TOMCAT|10.1-java17"

创建管道

  1. 在 Azure DevOps 项目中,从左侧导航菜单中选择 “管道 ”。

  2. 如果此管道是项目中的第一个管道,请选择“ 新建管道 ”或 “创建管道 ”。

  3. 在 “您的代码在哪里” 屏幕中,选择 GitHub。

  4. 可能会重定向到 GitHub 进行登录。 如果是这样,请输入 GitHub 凭据。

  5. 在 “选择存储库 ”屏幕上,选择 .NET 应用位于的存储库。

  6. 你可能会被重定向到 GitHub 来安装 Azure Pipelines 应用。 如果是,请选择批准并安装。

配置管道

  1. 出现“ 配置 ”选项卡时,选择“ 显示更多”,然后选择 Maven 包 Java 项目 Web 应用到 Azure 上的 Linux。

  2. 创建管道时,可以自动创建 Azure 资源管理器服务连接 。 要开始,请选择您在其中创建了资源组的 Azure 订阅。

  3. 选择验证和配置。 新管道包括新的 Azure 资源管理器服务连接。

    Azure Pipelines 会创建一个 azure-pipelines.yml 文件,该文件定义你的 CI/CD 管道,它:

    • 包括生成阶段,用于生成项目,以及将它作为 Linux Web 应用部署到 Azure 的部署阶段。
    • 作为部署阶段的一部分,它还会创建默认名称与 Web 应用相同的 环境 。 可以选择修改环境名称。
  4. 请确保所有默认输入都适用于你的代码。

  5. 选择“ 保存并运行”。 系统会提示你提交消息,因为 azure-pipelines.yml 文件将添加到存储库。 编辑消息后,选择“ 保存并再次运行 ”以查看管道是否正常运行。

验证部署

当您的管道运行时,构建和部署阶段会从蓝色(正在运行)变为绿色(已完成)。 若要监控管道的运行情况,请选择阶段和作业。

管道运行后,通过访问您的站点验证应用是否正在运行:

https://my-app-name.azurewebsites.net/petclinic

若要浏览应用的部署历史记录,请转到环境。 在管道摘要中:

  1. 选择环境选项卡。
  2. 选择“查看环境”。

清理资源

每当处理完所创建的资源后,都可以使用以下命令将其删除:

az group delete --name myapp-rg

出现提示时输入 y。

概要

已成功创建一个 Azure Pipeline,该管道会自动生成 Java 应用程序并将其部署到应用服务。 推送到存储库的任何更改现在都触发管道来生成和部署更新的应用。