使用 Azure Devops yaml 管道部署到本地服务器
Using Azure Devops yaml pipelines to deploy to on-prem servers
使用 Azure DevOps 管道时,是否可以使用 yaml 管道部署到本地服务器?
我已经使用部署组通过发布(经典)管道部署到本地服务器,并且我看到了有关使用 yaml 管道部署到 Azure 基础结构的说明。
但是我找不到任何有关如何使用 yaml 管道部署到本地服务器的示例 - 这可能吗?如果是这样,是否有任何示例可以说明如何实现这一目标?
是的,你可以。在 YAML 管道中,您可以使用“环境”替代部署组。它们的工作方式类似,您在目标机器上安装代理,然后在部署作业中指定环境
Create a new Environment with an appropriate name (e.g. Dev) then add a resource,您将能够添加 VM 或 Kubernetes 集群。假设您选择 VM,那么您将能够下载一个脚本,您可以 运行 一个目标机器来安装部署代理。此脚本将在环境中安装和注册代理。
将代理注册到环境后,将 deployment job 添加到 YAML
- stage: DeployToDev
displayName: Deploy to Dev
jobs:
- deployment: DeployWebSite
displayName: Deploy web site to Dev
environment: Dev
strategy:
runOnce:
deploy:
steps:
- task: PowerShell@2
inputs:
targetType: 'inline'
script: |
Write-Host "Deploy my code"
如之前的回答中所述,您需要创建一个新环境并将 VM 添加到环境中(请参阅 documentation)。
使用部署作业,还需要指定resourceType
- deployment: VMDeploy
displayName: Deploy to VM
environment:
name: ContosoDeploy
resourceType: VirtualMachine
...
如果您在此环境中有多个 VM,作业步骤将在所有 VM 上执行。
要定位特定的 VM,您可以添加标签(请参阅 documentation)。
jobs:
- deployment: VMDeploy
displayName: Deploy to VM
environment:
name: ContosoDeploy
resourceType: VirtualMachine
tags: windows,prod # only deploy to virtual machines with both windows and prod tags
...
使用 Azure DevOps 管道时,是否可以使用 yaml 管道部署到本地服务器?
我已经使用部署组通过发布(经典)管道部署到本地服务器,并且我看到了有关使用 yaml 管道部署到 Azure 基础结构的说明。
但是我找不到任何有关如何使用 yaml 管道部署到本地服务器的示例 - 这可能吗?如果是这样,是否有任何示例可以说明如何实现这一目标?
是的,你可以。在 YAML 管道中,您可以使用“环境”替代部署组。它们的工作方式类似,您在目标机器上安装代理,然后在部署作业中指定环境
Create a new Environment with an appropriate name (e.g. Dev) then add a resource,您将能够添加 VM 或 Kubernetes 集群。假设您选择 VM,那么您将能够下载一个脚本,您可以 运行 一个目标机器来安装部署代理。此脚本将在环境中安装和注册代理。
将代理注册到环境后,将 deployment job 添加到 YAML
- stage: DeployToDev
displayName: Deploy to Dev
jobs:
- deployment: DeployWebSite
displayName: Deploy web site to Dev
environment: Dev
strategy:
runOnce:
deploy:
steps:
- task: PowerShell@2
inputs:
targetType: 'inline'
script: |
Write-Host "Deploy my code"
如之前的回答中所述,您需要创建一个新环境并将 VM 添加到环境中(请参阅 documentation)。
使用部署作业,还需要指定resourceType
- deployment: VMDeploy
displayName: Deploy to VM
environment:
name: ContosoDeploy
resourceType: VirtualMachine
...
如果您在此环境中有多个 VM,作业步骤将在所有 VM 上执行。
要定位特定的 VM,您可以添加标签(请参阅 documentation)。
jobs:
- deployment: VMDeploy
displayName: Deploy to VM
environment:
name: ContosoDeploy
resourceType: VirtualMachine
tags: windows,prod # only deploy to virtual machines with both windows and prod tags
...