You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何创建YAML文件以通过Azure Pipelines和Azure Repos部署到Azure

从零配置Azure Pipelines部署Azure资源操作指南

前置准备

  • 提前准备可用的Azure订阅,以及对应Azure DevOps项目的管理员/编辑权限
  • 在Azure DevOps项目中创建Azure服务连接:进入「项目设置」→「服务连接」→「新建服务连接」→选择「Azure Resource Manager」,按向导完成Azure身份验证,记录你设置的服务连接名称,后续配置需要使用

第一步:创建Pipeline配置文件

在你的代码仓库根目录新建azure-pipelines.yml文件,从空白开始逐步添加配置:

1. 配置触发规则

设置哪些分支更新时会自动触发部署:

# 仅main分支提交时触发部署
trigger:
- main
# 如需禁用自动触发可改为:
# trigger: none

2. 配置运行代理

选择Pipeline运行的服务器环境,推荐使用微软托管的公共代理即可:

pool:
  # 选择Ubuntu系统镜像,也可根据需求替换为windows-latest/macos-latest
  vmImage: 'ubuntu-latest'

3. 添加部署步骤

根据你要部署的资源类型添加对应任务,以下为常用场景示例:

基础Azure登录验证(所有场景通用第一步)

steps:
- task: AzureCLI@2
  inputs:
    # 替换为你之前创建的Azure服务连接名称
    azureSubscription: '你的Azure服务连接名'
    scriptType: 'bash'
    scriptLocation: 'inlineScript'
    inlineScript: |
      # 输出当前登录的Azure账号信息,用于验证登录状态,验证通过后可删除
      az account show --output table

场景1:部署ARM/Bicep模板资源

- task: AzureResourceManagerTemplateDeployment@3
  inputs:
    deploymentScope: 'Resource Group'
    azureResourceManagerConnection: '你的Azure服务连接名'
    # 替换为你的Azure订阅ID
    subscriptionId: 'xxxx-xxxx-xxxx-xxxx'
    action: 'Create Or Update Resource Group'
    # 替换为目标资源组名称
    resourceGroupName: 'my-resource-group'
    # 替换为资源部署的区域
    location: 'chinaeast2'
    templateLocation: 'Linked artifact'
    # 替换为ARM/Bicep模板在仓库中的路径
    csmFile: '$(Build.SourcesDirectory)/infra/main.bicep'
    # 替换为模板参数文件路径,无参数文件可删除该行
    csmParametersFile: '$(Build.SourcesDirectory)/infra/main.parameters.json'
    deploymentMode: 'Incremental'

场景2:部署Azure Web应用

- task: AzureWebApp@1
  inputs:
    azureSubscription: '你的Azure服务连接名'
    appType: 'webAppLinux'
    # 替换为你提前创建的Web应用名称
    appName: 'my-web-app'
    # 替换为构建生成的应用包路径
    package: '$(System.DefaultWorkingDirectory)/build/*.zip'

第二步:在Azure DevOps中启用Pipeline

  • 进入Azure DevOps项目,依次点击「Pipelines」→「New Pipeline」
  • 选择你的代码托管源,再选中对应的代码仓库
  • 在配置页选择「Starter pipeline」,系统会自动加载你仓库中已有的azure-pipelines.yml,也可直接在线编辑配置内容
  • 保存配置后点击运行,即可完成首次部署

注意事项

首次运行如果提示权限不足,需要进入Azure对应订阅/资源组的访问控制页面,给服务连接对应的服务主体分配「参与者」角色权限
涉密参数如账号密码、密钥等不要直接写在YAML文件中,可进入Azure DevOps项目的「Pipelines」→「Library」创建加密变量组,在YAML中直接引用变量名即可,系统会自动加密敏感内容

内容的提问来源于stack exchange,提问作者Eduardo Gonzalez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 02:36:03