ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

AZ-400 GitHub Actions教程:如何用工作流自动构建并部署Web应用到Azure

AZ-400 GitHub Actions教程:如何用工作流自动构建并部署Web应用到Azure AZ-400 GitHub Actions教程如何用工作流自动构建并部署Web应用到Azure【免费下载链接】AZ400-DesigningandImplementingMicrosoftDevOpsSolutionsAZ-400 Course Repository for Labs and Demos.项目地址: https://gitcode.com/gh_mirrors/az/AZ400-DesigningandImplementingMicrosoftDevOpsSolutions在 AZ-400 认证课程Designing and Implementing Microsoft DevOps Solutions中GitHub Actions 是最受关注的 CI/CD 工具之一。本教程将基于课程自带的实验仓库手把手带你用 GitHub Actions 工作流实现 Web 应用的自动构建与部署代码推送到 GitHub 后工作流会自动触发编译、测试并把网站发布到 Azure App Service全程无需手动操作。即使你是零基础新手跟着这份 GitHub Actions 部署 Web 应用教程约 40 分钟就能跑通第一套自动化流水线。什么是 GitHub ActionsCI/CD 工作流的基础概念GitHub Actions 是 GitHub 内置的持续集成与持续部署CI/CD平台。你只需要在仓库的.github/workflows目录下放一个 YAML 文件就能定义一套工作流Workflow例如事件Event什么时候触发比如 push 到 main 分支、定时任务、手动点击运行作业Job跑哪些任务比如编译代码、运行测试、打包发布步骤Step每个作业里执行的具体命令或现成 Action。用它部署 Web 应用的最大好处是代码即流水线工作流文件跟着代码一起版本管理团队协作、回滚都更简单。本教程使用的示例项目是课程仓库中的 eShopOnWeb.NET 8 电商网站完整实验步骤见 AZ400_M02_L05_Implement_GitHub_Actions_for_CI_CD.md。准备工作账号与环境的快速配置开始前请确认你已具备以下条件一个GitHub 账号用于创建仓库和运行工作流一个Azure 订阅且拥有 Contributor 或 Owner 权限一份本实验的代码仓库。你可以直接克隆课程仓库git clone https://gitcode.com/gh_mirrors/az/AZ400-DesigningandImplementingMicrosoftDevOpsSolutions克隆后重点关注Instructions/Labs/目录下的实验文档和配套图片它们会带你走完整个流程。✅第一步把 eShopOnWeb 代码导入你的 GitHub 仓库新建仓库并选择导入功能登录 GitHub 后点击主页右上角的绿色New按钮进入新建仓库页面在“Create a new repository”页面点击标题下方的Import a repository链接进入导入向导。在表单中填入字段值源代码仓库 URL课程提供的 eShopOnWeb 仓库地址Repository NameeShopOnWebPrivacyPublic点击Begin Import等待导入完成即可把示例代码完整搬到自己的 GitHub 仓库中开启 GitHub Actions 权限导入完成后进入仓库Settings → Actions → General勾选Allow all actions and reusable workflows并保存。这一步确保工作流可以正常调用第三方 Action第二步创建 Azure 服务主体并配置 GitHub 密钥GitHub Actions 要帮你往 Azure 部署资源必须先获得 Azure 的访问授权。最常用的方式是通过服务主体Service Principal认证。创建资源组先在 Azure 门户中新建一个资源组例如rg-eshoponweb-NAMENAME 换成你的唯一标识。稍后工作流只会在这一个资源组范围内部署权限最小化安全又清晰。用 Cloud Shell 生成凭据打开 Azure 门户的Cloud ShellBash 模式执行下面这条命令注意替换订阅 ID 和资源组名并保证是一整行az ad sp create-for-rbac --name GH-Action-eshoponweb --role contributor --scopes /subscriptions/SUBSCRIPTION-ID/resourceGroups/RESOURCE-GROUP --sdk-auth命令会输出一段 JSON里面包含clientId、clientSecret、subscriptionId、tenantId等关键信息——这就是 GitHub 登录 Azure 的“钥匙”。把凭据存为 GitHub Secret回到 GitHub 仓库进入Settings → Secrets and variables → Actions点击New repository secretNameAZURE_CREDENTIALSSecret粘贴刚才复制的 JSON 内容保存后工作流里的azure/loginAction 就能通过这个密钥安全地连接 Azure 了。第三步修改并运行 CI/CD 工作流现在到了最核心的环节——启动自动构建部署工作流。打开仓库中的.github/workflows/eshoponweb-cicd.yml文件你会发现它已经内置了完整的 CI/CD 逻辑你只需做三处调整取消on段落的注释让工作流在每次 push 到 main 分支时自动触发同时保留workflow_dispatch以便手动运行修改env环境变量把RESOURCE-GROUP、SUBSCRIPTION-ID、WEBAPP-NAME中的占位符替换成你自己的资源组、订阅 ID 和唯一的网站名称提交修改点击Commit changes提交到 main 分支工作流会自动开始执行。 建议通读一遍工作流文件里的注释你会看到它其实分为buildandtest构建并测试和deploy部署两个作业中间通过构建产物Artifacts传递代码这正是 GitHub Actions 工作流的经典结构。第四步查看工作流执行结果并访问网站提交后进入仓库的Actions标签页就能看到正在运行的工作流点击运行记录可以查看每个作业、每个步骤的实时日志方便排查问题。等两个作业全部跑完页面顶部会出现绿色的Success状态并保留构建产物此时回到 Azure 门户打开之前创建的资源组你会惊喜地发现工作流已经用 Bicep 模板自动创建了App Service 计划 Web 应用打开 Web 应用的“浏览”按钮eShopOnWeb 网站已经在线了 整个流程从代码提交到网站上线完全自动化这就是 CI/CD 的魅力。进阶技巧用 GitHub Environments 添加人工审批生产环境部署通常不希望“一键到底”。GitHub 提供了Environments环境功能可以为部署作业增加人工审批关卡在仓库Settings → Environments中新建一个名为Development的环境勾选Required Reviewers把你自己添加为审批人回到Actions页面点击Run workflow手动触发一次运行当流水线推进到deploy作业时会暂停并弹出审批请求点击Approve and deploy后才会真正执行部署这样一来构建自动跑、部署靠审批既享受自动化效率又保留了对线上环境的安全把控。✅小结从零到一的 GitHub Actions 自动化之路通过本教程你已经完成了 GitHub Actions 部署 Web 应用的全流程导入代码、配置 Azure 服务主体、编写并运行 CI/CD 工作流、添加人工审批。这套技能不仅适用于 AZ-400 考试更是日常 DevOps 工作中最实用的自动化手段。想继续深入可以接着挑战课程里的其他实验比如用 Azure Pipelines 实现同样的 CI/CD对比两种工具的风格差异或是在工作流中接入 SonarCloud 代码质量扫描。只要掌握了**“仓库 工作流 云服务凭据”**这个核心组合你就能把任意应用快速接入自动构建与部署的轨道。【免费下载链接】AZ400-DesigningandImplementingMicrosoftDevOpsSolutionsAZ-400 Course Repository for Labs and Demos.项目地址: https://gitcode.com/gh_mirrors/az/AZ400-DesigningandImplementingMicrosoftDevOpsSolutions创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表