使用 Azure Toolkit for IntelliJ 将 Java 应用部署到用于容器的 Azure Web 应用
Docker 容器是一种广泛使用的 Web 应用程序部署方法。 通过使用 Docker 容器,开发人员可以将所有项目文件和依赖项整合到一个包中,以便部署到服务器上。 Azure Toolkit for IntelliJ 通过添加将容器部署到 Microsoft Azure 的功能,为 Java 开发人员简化了这一过程。
本文演示了使用 Azure Toolkit for IntelliJ 创建一个基本的 Hello World Web 应用并在 Linux 容器中将 Web 应用发布到 Azure 所需的步骤。
先决条件
- 一个受支持的 Java 开发工具包 (JDK)。 有关在 Azure 上进行开发时可供使用的 JDK 的详细信息,请参阅 Azure 和 Azure Stack 上的 Java 支持。
- IntelliJ IDEA:Ultimate 或 Community Edition。
- 用于 IntelliJ 的 Azure 工具包。 有关详细信息,请参阅安装用于 IntelliJ 的 Azure 工具包。 你还需要登录你的 Azure 帐户以使用 IntelliJ 的 Azure 工具包。 有关详细信息,请参阅 Azure Toolkit for IntelliJ 的登录说明。
- 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 设置或接受默认设置,然后单击“完成”。
在左侧 项目 选项卡中导航到您的项目,然后打开文件 src/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 工具包中显示的易记名称。
容器注册表:创建一个新的容器注册表,或者从下拉菜单中选择本文上一节中创建的容器注册表。 “服务器 URL”、“用户名”和“密码”字段将自动填充。
映像和标记:指定容器映像名称,通常使用以下语法:“注册表.azurecr.io/appname:latest”,其中:
- “注册表”是指本文上一部分中的容器注册表
- appname 是您 Web 应用程序的名称
使用现有 Web 应用或创建新的 Web 应用:指定是将容器部署到现有 Web 应用还是创建一个新的 Web 应用。 指定的应用名称将创建 Web 应用的 URL;例如:wingtiptoys.azurewebsites.net。
资源组:指定是使用现有资源组还是创建一个新的资源组。
应用服务计划:指定使用现有应用服务计划,还是创建一个新的应用服务计划。
完成上面列出的设置配置后,点击 运行。 Web 应用部署成功后,“运行”窗口中将显示其状态。
发布 Web 应用后,可以浏览之前为 Web 应用指定的 URL,例如:wingtiptoys.azurewebsites.net。
可选:修改 Web 应用发布设置
在发布 Web 应用后,设置将被保存为默认设置,单击工具栏上的绿色箭头图标即可在 Azure 上运行应用程序。 单击 Web 应用的下拉菜单并单击“编辑配置”即可修改这些设置。
当显示“运行/调试配置”对话框时,可以修改任何默认设置,然后单击“确定”。
后续步骤
有关 Docker 的其他资源,请参阅官方 Docker 网站。
若要报告错误或请求新功能,请在 GitHub 存储库上创建问题,或使用标记 azure-java-tools 在 Stack Overflow 上提问。
若要详细了解如何将 Java 与 Azure 配合使用,请参阅以下链接: