本文介绍如何使用 GitHub 存储库将 Spring PetClinic 示例应用程序部署到 Azure 容器应用。
有多种选项可用于部署 Java 应用程序,包括以下选项:
- 从本地文件系统或代码存储库进行部署。
- 使用 Maven 或 IDE 进行部署。
- 使用 WAR 文件、JAR 文件或直接从源代码进行部署。
在本教程结束时,你将部署一个 Web 应用程序,该应用程序可以通过 Azure 门户进行管理。 以下屏幕截图显示了部署到 Azure 容器应用的 PetClinic 应用程序的主页:
- 一份 Azure 订阅。 免费创建一个。
-
Contributor
或Owner
权限在 Azure 订阅上。 有关详细信息,请参阅使用 Azure 门户分配 Azure 角色。 - GitHub 帐户。
- Git
- Azure CLI
- Azure 容器应用 CLI 扩展版本 0.3.47 或更高版本。 使用以下命令安装最新版本:
az extension add --name containerapp --upgrade --allow-preview
- Java 开发工具包版本 17 或更高版本。
- Apache Maven
使用 Azure 容器应用 Java 示例存储库页上的分支按钮将存储库分支到个人 GitHub 帐户。 分叉完成后,复制分支的 URL,以便在下一部分使用。
使用以下步骤部署项目:
使用以下命令设置必要的环境变量:
export RESOURCE_GROUP="pet-clinic-container-apps" export LOCATION="canadacentral" export ENVIRONMENT="env-pet-clinic-container-apps" export CONTAINER_APP_NAME="pet-clinic" export REPO_URL="<URL-of-your-GitHub-repo-fork>"
如果尚未登录,请从 CLI 登录到 Azure。 有关详细信息,请参阅快速入门的 “设置 ”部分 :从本地源代码生成和部署到 Azure 容器应用。
使用以下命令生成和部署 Spring Boot 应用:
az containerapp up \ --resource-group $RESOURCE_GROUP \ --name $CONTAINER_APP_NAME \ --location $LOCATION \ --environment $ENVIRONMENT \ --context-path ./spring-petclinic \ --repo $REPO_URL
此命令执行以下任务:
- 创建资源组。
- 创建 Azure 容器注册表。
- 生成容器映像并将其推送到注册表。
- 使用 Log Analytics 工作区创建容器应用环境。
- 使用生成的容器映像创建和部署容器应用。
该项目现已部署。 将新代码推送到存储库时,GitHub Action 将执行以下任务:
- 生成容器映像并将其推送到 Azure 容器注册表。
- 将容器映像部署到创建的容器应用。
部署完成后,转到容器应用的 Azure 门户 “概述 ”页,然后选择 “应用程序 URL ”以查看在云中运行的应用程序。
如果打算继续使用更多快速入门和教程,可能需要保留这些资源。 不再需要资源时,可以使用以下命令将其删除以避免 Azure 费用:
az group delete --name $RESOURCE_GROUP