适用于 GitHub Actions 的 DevOps Starter 提供了简化的体验,可在其中选择一个示例应用程序来创建持续集成(CI)和持续交付(CD)工作流以部署到 Azure。
DevOps Starter 还包括:
- 自动创建 Azure 资源,例如新的 Azure Web 应用。
- 在 GitHub 中创建和配置包含 CI 生成作业的工作流。
- 工作流还包含 CD 的部署作业。
- 创建用于监视的 Azure Application Insights 资源。
在本教程中,你将:
- 使用 DevOps Starter 部署 Node.js 应用
- 配置 GitHub 和 Azure 订阅
- 检查 GitHub 工作流
- 将更改提交到 GitHub,并将其自动部署到 Azure
- 配置 Azure Application Insights 监控
- 清理资源
先决条件
- 具有活动订阅的 Azure 帐户。 免费创建帐户。
使用 DevOps Starter 部署 Node.js 应用
DevOps Starter 在 GitHub 中创建工作流。 可以使用现有的 GitHub 组织。 DevOps Starter 还会在所选的 Azure 订阅中创建 Azure 资源,例如 Web 应用。
登录到 Azure 门户。
在搜索框中,键入 DevOps Starter,然后选择。 单击 添加 以创建一个新的。
确保将 CI/CD 提供程序选为 GitHub Actions。
选择 Node.js,然后选择“ 下一步”。
在“ 选择应用程序框架”下,选择 Express.js,然后选择“ 下一步”。 在上一步骤中选择的应用程序框架决定了此处提供的 Azure 服务部署目标的类型。
选择 Windows Web 应用,然后选择“ 下一步”。
配置 GitHub 和 Azure 订阅
授权 GitHub 并选择现有的 GitHub 组织。
输入 GitHub 存储库的名称。
选择 Azure 订阅服务。 (可选)可以选择 更改,然后输入更多配置详细信息,例如 Azure 资源的位置。
输入 Web 应用名称,然后选择“ 完成”。 几分钟后,Azure Web 应用将准备就绪。 示例 Node.js 应用程序在 GitHub 组织的存储库中设置,触发工作流,并将应用程序部署到新创建的 Azure Web 应用。
完成后,DevOps Starter 仪表板将显示在 Azure 门户中。 还可以直接从 Azure 门户中 所有资源 导航到仪表板。
仪表板提供 GitHub 代码存储库、CI/CD 工作流和 Azure 中正在运行的应用程序的可见性。
DevOps Starter 会自动配置一个触发器,用于将代码更改部署到存储库。
检查 GitHub 工作流
在上一步中,DevOps Starter 会自动配置完整的 GitHub 工作流。 根据需要浏览和自定义工作流。 执行以下步骤,自行熟悉工作流。
在 DevOps Starter 仪表板的左侧,选择 GitHub 工作流。 此链接将打开新项目的浏览器选项卡和 GitHub 工作流。
注释
不要重命名工作流文件。 工作流文件的名称应为devops-starter-workflow.yml,以便仪表板反映更改。
工作流 yaml 文件包含生成和部署应用程序所需的所有 GitHub Actions。 单击 “编辑文件 ”选项以自定义工作流文件。
在存储库的“ 代码 ”选项卡下,单击 “提交”。 此视图显示与特定部署关联的代码提交。
在存储库的“操作”选项卡下,您可以查看存储库中所有工作流运行的历史记录。
选择 最新的运行 以查看工作流中运行的所有作业。
单击 作业 可查看工作流运行的详细日志。 日志包含有关部署过程的有用信息。 可以在部署期间和之后查看它们。
单击“ 拉取请求 ”选项卡可查看存储库上的所有拉取请求
提交代码更改并执行 CI/CD
DevOps Starter 在 GitHub 中创建存储库。 若要查看存储库并更改应用程序的代码,请执行以下作:
在 DevOps Starter 仪表板的左侧,选择主分支的链接。 此链接将打开新创建的 GitHub 存储库的视图。
若要查看存储库克隆 URL,请选择浏览器右上角的 “克隆 ”。 可以在偏好的 IDE 中克隆 Git 存储库。 在接下来的几个步骤中,可以使用 Web 浏览器直接将代码更改提交到主分支。
在浏览器左侧,转到 /Application/views/index.pug 文件。
选择 “编辑”,然后对某些文本进行更改。 例如,更改其中一个标记的某些文本。
选择 提交,然后保存所做的更改。
在浏览器中,转到 DevOps Starter 仪表板。
现在应会看到正在进行的 GitHub 工作流构建任务。 刚进行的更改通过 GitHub 工作流自动生成和部署。部署完成后,刷新应用程序以验证更改。
配置 Azure Application Insights 监控
借助 Azure Application Insights,可以轻松监视应用程序的性能和使用情况。 DevOps Starter 会自动为应用程序配置 Application Insights 资源。 可以根据需要进一步配置各种警报和监视功能。
在 Azure 门户中,转到 DevOps Starter 仪表板。
请在右下方选择您应用的 Application Insights 链接。 此时将打开 Application Insights 窗格。 此视图包含应用的使用情况、性能和可用性监视信息。
选择 时间范围,然后选择“过去一小时”。 若要筛选结果,请选择 更新。 现在可以查看过去 60 分钟内的所有活动。
若要退出时间范围,请选择 x。
选择 警报,然后选择 添加指标警报。
输入警报的名称。
在 指标 下拉列表中,检查各种警报指标。 默认警报是针对 服务器响应时间大于 1 秒。 可以轻松配置各种警报,以提高应用的监视功能。
选中 通过电子邮件通知所有者、参与者和读者 复选框。 你可以选择在显示警报时,通过执行 Azure 逻辑应用程序来执行额外操作。
选择 “确定” 创建警报。 片刻后,警报在仪表板上显示为活动状态。
退出 警报 区域,然后返回到 Application Insights 窗格。
选择 可用性,然后选择 添加测试。
输入测试名称,然后选择创建。 将创建一个简单的 ping 测试来验证应用程序的可用性。 几分钟后,测试结果可用,Application Insights 仪表板会显示可用性状态。
清理资源
如果要测试,可以通过清理资源来避免产生计费费用。 不再需要这些虚拟机时,可以删除本教程中创建的 Azure 虚拟机和相关资源。 为此,请使用 DevOps Starter 仪表板上的 删除 功能。
重要
以下过程永久删除资源。 Delete 功能会破坏 Azure 中的 DevOps Starter 中项目创建的数据,并且无法检索它。 仅在仔细阅读提示后才使用此过程。
- 在 Azure 门户中,转到 DevOps Starter 仪表板。
- 在右上角,选择 删除。
- 在提示符下,选择 是,以 永久删除 资源。
可以选择修改工作流以满足团队的需求。 还可以将此 CI/CD 模式用作其他存储库的模板。
后续步骤
在本教程中,你将学习到如何:
- 使用 DevOps Starter 部署 Node.js 应用
- 配置 GitHub 和 Azure 订阅
- 检查 GitHub 工作流
- 将更改提交到 GitHub,并将其自动部署到 Azure
- 配置 Azure Application Insights 监控
- 清理资源
若要详细了解 GitHub Actions 和工作流,请参阅: