Skip to content
返回云服务

Azure DevOps(管道、仓库、看板)

微软的 ALM 平台:Git 仓库、CI/CD 管道、看板(工作跟踪)、测试计划和制品(包源),5 用户以内免费。

Azure进阶

为什么

Azure DevOps 在一个集成平台中提供无限私有 Git 仓库、并行 CI 管道(1 个免费托管作业,更多需购买并行作业)和敏捷规划看板。管道使用 YAML 实现版本控制,并支持自托管代理用于私有网络。Azure holds 21% cloud market share (Synergy Research Q4 2024)。

Azure 是拥有 Microsoft 365 / Active Directory 资产的企业的默认选择 — 95% 的财富 500 强使用 Azure。AKS 和 Cosmos DB 对 .NET 工作负载是一等公民。

何时使用

微软中心团队需要集成看板+CI/CD,或需防火墙后自托管代理时使用 Azure DevOps。代码在 GitHub 且需更简单 YAML 时用 GitHub Actions。

也可两者结合 —— GitHub 上仓库,Azure DevOps 上看板/管道,通过 GitHub 集成。

如何做

1. 创建 Azure DevOps 组织和项目。 2. 将代码推送到仓库(或连接 GitHub 仓库)。 3. 从 YAML 文件(azure-pipelines.yml)或设计器创建管道。 4. 用任务(UsePythonVersion、AzureWebApp@1 等)定义构建和部署阶段。 5. 为 Azure 部署设置服务连接(ARM 服务连接)。 6. 用看板管理工作项、冲刺和拉取请求关联。 ```yaml # azure-pipelines.yml trigger: [main] pool: { vmImage: ubuntu-latest } steps: - task: NodeTool@0 inputs: { versionSpec: '18.x' } - script: npm ci && npm run build - task: AzureWebApp@1 inputs: azureSubscription: 'my-arm-conn' appName: myapp package: $(Build.ArtifactStagingDirectory) ```

示例

多阶段管道:构建 → 测试 → 部署到 staging → 审批 → 部署到生产,带手动审批门控: ```yaml trigger: [main] stages: - stage: Build jobs: - job: B steps: [script: npm ci && npm run build, task: PublishBuildArtifacts@1] - stage: DeployStaging dependsOn: Build jobs: - deployment: D environment: staging strategy: { runOnce: { deploy: { steps: [task: AzureWebApp@1] } } } - stage: DeployProd dependsOn: DeployStaging jobs: - deployment: D environment: prod # 有审批门控 strategy: { runOnce: { deploy: { steps: [task: AzureWebApp@1] } } } ```

常见问题

  • ⚠管道失败 'No hosted parallelism has been purchased' —— 免费层仅 1 个并行作业;等待运行中的作业或在组织设置中购买更多并行。
  • ⚠自托管代理无法访问 Azure —— 代理在防火墙后;确保能访问 *.azure-devices.net 和 ARM 终结点,或在与目标同 VNet 中使用自托管代理。
  • ⚠服务连接 'not authorized' —— ARM 服务连接的服务主体密钥过期;在 Azure AD 轮换并更新连接。

最佳实践

  • ✓在仓库中用 YAML(azure-pipelines.yml)定义管道而非设计器 —— 使变更可审查和版本控制。
  • ✓生产环境使用环境审批门控,部署前须人工审批,并将构建和部署拆分为独立阶段。
  • ✓用 AzureWebApp@1 任务配合 'deployment slot' 实现零停机部署,冒烟测试通过后再交换。

常见问题解答

什么是Azure DevOps(管道、仓库、看板)?它解决什么问题?

微软的 ALM 平台:Git 仓库、CI/CD 管道、看板(工作跟踪)、测试计划和制品(包源),5 用户以内免费。 它可帮助开发者在不自建基础设施的前提下完成部署、存储与扩展,是云服务选型的核心参考。

如何在 5 分钟内上手Azure DevOps(管道、仓库、看板)?

两步即可跑通:① 创建 Azure DevOps 组织和项目。;② 将代码推送到仓库(或连接 GitHub 仓库)。。建议先用免费套餐验证流程,再接入生产环境。

Azure DevOps(管道、仓库、看板) 最容易踩的坑是什么?

最高频的问题是:管道失败 'No hosted parallelism has been purchased' —— 免费层仅 1 个并行作业;等待运行中的作业或在组织设置中购买更多并行。。建议在上线前用 checklist 逐项核对,并在 CI 中加入策略与配置扫描。

Azure DevOps(管道、仓库、看板) 的最佳实践有哪些?

Azure DevOps(管道、仓库、看板) 的最佳实践包括:在仓库中用 YAML(azure-pipelines.yml)定义管道而非设计器 —— 使变更可审查和版本控制。;生产环境使用环境审批门控,部署前须人工审批,并将构建和部署拆分为独立阶段。;用 AzureWebApp@1 任务配合 'deployment slot' 实现零停机部署,冒烟测试通过后再交换。。其中首条「在仓库中用 YAML(azure-pipelines.yml)定义管道而非设计器 —— 使变更可审查和版本控制。」应作为团队默认规范写入 IaC 模板。

Azure DevOps(管道、仓库、看板) 如何控制成本与避免账单意外?

三招防超支:① 为所有资源打 env/team 标签并启用账单告警;② 用预算阈值触发 Slack/邮件通知;③ 定期用 Cost Explorer 审查闲置资源并清理。Azure DevOps(管道、仓库、看板) 多数提供免费套餐,先在免费额度内验证再放量。