1.总结问题
我正在尝试使用 GitHub 操作从 GitHub 将代码部署到 Azure 应用服务容器。使用 GitHub Actions 我能够成功签出我的主分支,登录到 azure 容器注册表,使用 docker 构建容器,并将我的 docker 镜像推送到容器。但是在使用 azure/webapps-deploy@v2 和应用程序授权的发布配置文件部署到 Azure Web 应用程序时出现以下错误。
Run azure/webapps-deploy@v2
with:
app-name: dtpdashboardContainers
slot-name: production
publish-profile: ***
images: dtpdashboardcontainerregistry.azurecr.io/client:29b2d0a483f35ffd4490d75443b309f3a28c8ad9
package: .
Error: Deployment Failed with Error: Error: Failed to get app runtime OS
{}
2.描述您尝试过的内容
值得注意的是,我可以通过 azure 门户手动部署。我可以转到容器的 Azure 门户部署中心,选择构建并传递到 Azure 容器注册表并部署的新映像。这一切都按预期工作,但令人沮丧的是,我无法通过 GitHub 上的推送操作来完成此操作。
3.显示一些代码
构建成功,部署失败并出现上述错误。我已经为此苦苦挣扎了一段时间,因此非常感谢您的帮助!谢谢。
Docs for the Azure Web Apps Deploy action: https://github.com/Azure/webapps-deploy
# More GitHub Actions for Azure: https://github.com/Azure/actions
name: Build and deploy client container app to Azure
on:
push:
branches:
- master
workflow_dispatch:
jobs:
build:
runs-on: 'ubuntu-18.04'
steps:
- uses: actions/checkout@v2
- name: Login to Azure Container Registry
uses: azure/docker-login@v1
with:
login-server: dtpdashboardcontainerregistry.azurecr.io
username: ${{ secrets.AZUREAPPSERVICE_CONTAINERUSERNAME_1EBED267A6874BAE8C94362D3A133011 }}
password: ${{ secrets.AZUREAPPSERVICE_CONTAINERPASSWORD_3E64C8001D134F0F87A64922FA0D562B }}
- name: Build Container
run: docker build -t dtpdashboardcontainerregistry.azurecr.io/client:${{ github.sha }} ./client
- name: Push client image
run: docker push dtpdashboardcontainerregistry.azurecr.io/client:${{ github.sha }}
deploy:
runs-on: 'ubuntu-18.04'
needs: build
environment:
name: 'production'
url: ${{ steps.deploy-to-webapp.outputs.webapp-url }}
steps:
- name: Deploy to Azure Web App
id: deploy-to-webapp
uses: azure/webapps-deploy@v2
with:
app-name: 'dtpdashboardContainers'
slot-name: 'production'
publish-profile: ${{ secrets.AzureAppService_PublishProfile_49fd57adb2104ab59b9a586e4a6e8049 }}
images: 'dtpdashboardcontainerregistry.azurecr.io/client:${{ github.sha }}'
答案 0 :(得分:0)
搜索类似案例,没有找到更有效的内容来解决这个问题。我只能建议你试试。
尝试步骤:
修改ubuntu版本,使用runs-on:'ubuntu-latest'
重新创建一个 web 应用程序(在不同的区域下)进行测试,并执行部署
我搜索的链接,供参考: