使用 Azure Toolkit for IntelliJ 将 Java 应用部署到用于容器的 Web 应用
Docker 容器广泛用于部署 Web 应用程序。 开发人员可在其中将其所有项目文件和依赖项整合成单个包,以便部署到服务器。 Azure Toolkit for IntelliJ 通过添加用于将容器部署到 Microsoft Azure 的功能,为 Java 开发人员简化了部署过程。
本文演示如何创建基本的 Hello World Web 应用和使用用于 IntelliJ 的 Azure 工具包将 Linux 容器中的 Web 应用发布到 Azure。
先决条件
- 一个受支持的 Java 开发工具包 (JDK)。 有关在 Azure 上进行开发时可供使用的 JDK 的详细信息,请参阅 Azure 和 Azure Stack 上的 Java 支持。
- IntelliJ IDEA、Ultimate 或 Community Edition。
- 用于 IntelliJ 的 Azure 工具包。 有关详细信息,请参阅安装用于 IntelliJ 的 Azure 工具包。 还需要登录到用于 IntelliJ 的 Azure 工具包的 Azure 帐户。 有关详细信息,请参阅 用于 IntelliJ 的 Azure 工具包的登录说明。
- Docker 客户端。
注意
若要完成本教程中的步骤,需要将 Docker 配置为在不具备 TLS 的情况下在端口 2375 上公开守护程序。 可在安装 Docker 时配置此设置,或通过 Docker 设置菜单进行配置。
安装和登录
以下步骤将指导你完成 IntelliJ 开发环境中登录 Azure 的过程。
如果尚未安装该插件,请参阅安装 Azure Toolkit for IntelliJ。
若要登录 Azure 帐户,请导航到左侧的 Azure 资源管理器边栏,然后单击“Azure 登录”图标。 或者,你可导航到“工具”,展开“Azure”,然后单击“Azure 登录”。
在“Azure 登录”窗口中选择“设备登录”,然后单击“登录”(其他登录选项)。
在“Azure 设备登录”对话框中单击“复制并打开”。
在浏览器中粘贴设备代码(在最后一个步骤中单击“复制并打开”时已复制),然后单击“下一步”。
选择 Azure 帐户,完成登录所需的全部身份验证过程。
登录后,关闭浏览器并切换回 IntelliJ IDE。 在“选择订阅”对话框中,选择要使用的订阅,然后单击“选择”。
创建新的 Web 应用项目
单击“文件”,展开“新建”,然后单击“项目”。
在“新建项目”对话框中,选择“Maven”,并确保已选中“从原型创建”选项。 从列表中选择“maven-archetype-webapp”,然后单击“下一步”。
展开“项目坐标”下拉列表查看所有输入字段,并为新的 Web 应用指定以下信息,然后单击“下一步”:
- 名称:Web 应用的名称。 这将自动填写 Web 应用的 ArtifactId 字段。
- GroupId:项目组的名称,通常是公司域。 (例如 com.microsoft.azure)
- 版本:我们将保留默认版本 1.0-SNAPSHOT。
自定义任何 Maven 设置或接受默认设置,然后单击“完成”。
导航到左侧的“项目”选项卡上的项目,然后打开 rc/main/webapp/index.jsp 文件。 将代码替换为以下内容并保存更改:
<html> <body> <b><% out.println("Hello World!"); %></b> </body> </html>
创建 Azure 容器注册表,用作专用 Docker 注册表
以下步骤将引导你完成使用 Azure 门户来创建 Azure 容器注册表的步骤。
注意
如果想要使用 Azure CLI(而不是 Azure 门户),请按照使用 Azure CLI 2.0 创建专用 Docker 容器注册表中的步骤操作。
浏览到 Azure 门户并登录。
登录到你在 Azure 门户的帐户后,可以按照使用 Azure 门户创建专用 Docker 容器注册表一文中的步骤操作,为方便起见,在以下步骤中进行了解释。
依次单击“+创建资源”菜单图标、“容器”类别和“容器注册表”。
显示“创建容器注册表”页面后,请指定以下信息:
订阅:指定要用于新容器注册表的 Azure 订阅。
资源组:指定容器注册表的资源组。 请选择以下选项之一:
- 新建:指定要创建新的资源组。
- 使用现有:指定将从与 Azure 帐户关联的资源组列表中进行选择。
注册表名称:指定新容器注册表的名称。
位置:指定要在其中创建容器注册表的区域(例如“美国西部”)。
SKU:指定容器注册表的服务层。 对于本教程,请选择“基本”。 有关详细信息,请参阅 Azure 容器注册表服务层级。
单击“查看 + 创建”,验证信息是否正确。 单击“创建”以完成。
在 Docker 容器中部署 Web 应用
以下步骤将引导你为 Web 应用配置 Docker 支持并将 Web 应用部署到 Docker 容器中。
导航到左侧“项目”选项卡上的项目,然后右键单击项目。 展开“Azure”,然后单击“添加 Docker 支持”。
将使用默认配置自动创建 Docker 文件。
添加 Docker 支持后,右键单击项目资源管理器中的项目,展开“Azure”,然后单击“在用于容器的 Web 应用上运行”。
在“在用于容器的 Web 应用上运行”对话框中,填写以下信息:
名称:用于指定显示在 Azure Toolkit 中的友好名称。
容器注册表:从本文上一部分创建的下拉菜单中选择容器注册表。 “服务器 URL”、“用户名”和“密码”字段会自动填充。
映像和标记:用于指定容器映像名称;通常使用以下语法:“registry.azurecr.io/appname:latest”,其中:
- 注册表是上文所述的容器注册表
- appname 是 Web 应用的名称
“使用现有的 Web 应用”或“创建新的 Web 应用”:用于指定是将容器部署到现有 Web 应用还是创建新的 Web 应用。 指定的“应用名称”将创建 Web 应用的 URL,例如 wingtiptoys.azurewebsites.net。
资源组:指定是要使用现有资源组还是创建新的资源组。
App 服务计划:指定是使用现有计划还是创建新的应用服务计划。
配置完上面列出的设置后,单击“运行”。 成功部署 Web 应用以后,状态会显示在“运行”窗口中。
发布 Web 应用后,可浏览到之前为 Web 应用指定的 URL,例如 wingtiptoys.azurewebsites.net。
可选:修改 Web 应用发布设置
发布 Web 应用后,所做设置会保存为默认设置,可单击工具栏上的绿色箭头图标在 Azure 上运行应用程序。 可单击 Web 应用的下拉菜单,然后单击“编辑配置”来修改这些设置。
出现“运行/调试配置”对话框后,可修改任意默认设置,然后单击“确定”。
后续步骤
有关 Docker 的其他资源,请参阅官方 Docker 网站。
若要报告 bug 或请求新功能,请在 GitHub 存储库上创建问题,或使用标记 azure-java-tools 在 Stack Overflow 上提问。
若要详细了解如何将 Java 与 Azure 配合使用,请参阅以下链接: