【问题标题】:Deploying web app to on-prem server using Azure Pipelines使用 Azure Pipelines 将 Web 应用程序部署到本地服务器
【发布时间】:2022-11-10 10:25:38
【问题描述】:
我正在使用 Azure DevOps 管道构建 Web 应用程序并将其部署到本地服务器。
部署正在运行,但该版本似乎正在创建一个离线网站,该网站是 IIS 下的非功能性网站。部署任务确实将正确的工件部署到实际的网站文件夹中,但它创建的奇怪的离线网站并不是一个功能性网站:我附上了我们在 IIS 中看到的内容的快照。
我使用了错误的配置类型吗?我尝试了其他选项,但配置错误。
我期待网站会更新,但发布任务不会创建一个新网站。
【问题讨论】:
标签:
.net
azure-devops
azure-pipelines
【解决方案1】:
请检查您的“testblaz”目录并确保“web config”文件存在。如果没有,你的“testblaz”就不能成为一个功能性网站。您可能会错过创建管道的一些重要任务。
请按照以下步骤使用 azure 管道将 Web 应用程序部署到本地服务器:
1 创建一个包含 3 个任务的管道:构建项目和发布项目以及发布工件。
YAML 管道示例:
trigger:
- main
pool:
vmImage: ubuntu-latest
variables:
buildConfiguration: 'Release'
steps:
- task: DotNetCoreCLI@2
displayName: 'dotnet build'
inputs:
command: 'build'
projects: '*/*.csproj'
- task: DotNetCoreCLI@2
displayName: 'dotnet publish'
inputs:
command: 'publish'
publishWebProjects: true
arguments: '--configuration $(buildConfiguration) --output $(Build.ArtifactStagingDirectory)'
- task: PublishPipelineArtifact@1
displayName: 'Publish artifacts'
inputs:
targetPath: '$(Build.ArtifactStagingDirectory)'
publishLocation: 'pipeline'
2 管道成功运行后,它会自动发布一个工件,该工件将用于 IIS 部署网站。
3 创建发布管道并配置步骤 2 生成的“包或文件夹”。(包的文件路径或 MSBuild 生成的文件夹或压缩存档文件)
包如下所示:
4 成功部署发布后,您将在 IIS 中看到一个功能网站。
5 浏览演示网站。