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

无法将修改后的Git仓库部署至Azure App Service的问题排查

问题排查与解决方案

一、前端修改未生效的核心排查点

1. 确认代码构建产物是否正确生成

  • 查看GitHub Actions执行日志的构建阶段,检查frontend-src-pages-layout-layout.tsx的修改是否被正确编译。如果原仓库Workflow缺少前端构建步骤,需补充:
    - name: 构建前端代码
      working-directory: ./frontend
      run: |
        npm install
        npm run build
    

2. 确认部署产物是否正确上传到Web App

  • 容器部署场景:检查自己的ACR镜像是否为最新构建版本,Web App的部署配置是否关联该新镜像。
  • 代码部署场景:使用azure/webapps-deploy@v2时,必须指定部署前端构建后的build目录,不能直接上传源码。在Workflow部署步骤中添加package: ./frontend/build。

3. 清除缓存并强制重启

  • 登录Azure门户进入目标Web App,打开高级工具→Kudu,在控制台执行:
    rm -rf /home/site/wwwroot/*
    
    回到Web App页面执行重启操作,避免旧缓存覆盖新修改。

二、Workflow执行与部署报错的解决

1. ACR_USERNAME缺失问题

  • 进入GitHub仓库的Settings→Secrets and variables→Actions,添加ACR_USERNAME和ACR_PASSWORD两个密钥,值对应Azure容器注册表访问密钥中的用户名和密码。

2. 使用azure/webapps-deploy@v2后的重启报错

  • 需配置Azure服务主体:
    1. 在Azure CLI中执行命令(替换括号内的参数):
      az ad sp create-for-rbac --name "webapp-deploy-sp" --role contributor --scopes /subscriptions/<你的订阅ID>/resourceGroups/<资源组名称>/providers/Microsoft.Web/sites/<Web App名称> --sdk-auth
      
    2. 将生成的JSON内容复制到GitHub仓库的Actions密钥中,命名为AZURE_CREDENTIALS。
    3. 修改Workflow部署步骤,改用服务主体认证:
      - name: 部署到Azure Web App
        uses: azure/webapps-deploy@v2
        with:
          app-name: '<你的Web App名称>'
          slot-name: 'production'
          package: ./frontend/build
          credentials: ${{ secrets.AZURE_CREDENTIALS }}
      

三、仓库连接与Workflow配置的关键注意事项

  • 重新连接仓库时,需开启GitHub Actions权限:在仓库Settings→Actions→General中,勾选允许Actions创建和批准PR,确保Workflow拥有读取仓库内容和部署到Azure的权限。
  • 容器部署场景下,Web App的镜像源必须指向自己的ACR镜像,不能使用原仓库的公共镜像。

内容的提问来源于stack exchange,提问作者Manu Chadha

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 18:52:49