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

GitHub Action显示部署成功,但Azure Web App未部署文件导致应用无法运行

GitHub Action显示部署成功,但Azure Web App未部署文件导致应用无法运行

我明白这种日志全绿但实际没部署的情况有多头疼——明明每一步都显示成功,结果服务器上连个.py文件都找不到,确实让人摸不着头脑。咱们先从你提供的GitHub Action配置里找找问题所在:

核心问题:部署步骤未指定要部署的内容

你的azure/webapps-deploy@v3动作没有告诉Azure要部署哪些文件!这个动作不会自动扫描当前工作目录的内容,必须通过package或path参数明确指定部署源。这就是为什么日志显示成功,但服务器上没有任何文件的根本原因。

次要问题:打包与解压的冗余与不合理

  1. 打包命令包含冗余目录:你在build阶段用zip release.zip ./* -r打包时,会把venv目录也包含进去(虽然你在上传 artifact 时排除了venv,但release.zip里已经有这个目录了),既浪费空间又可能导致部署问题。
  2. 解压步骤完全冗余:其实你可以直接部署build阶段生成的zip包,不需要在deploy阶段手动解压,这样既高效又能避免路径错误。

修正后的GitHub Action配置

优化Build阶段的打包命令

把打包命令改成下面这样,直接排除venv目录,避免冗余内容:

- name: Zip artifact for deployment
  run: zip -r release.zip . -x "venv/*"

修正Deploy阶段的部署步骤

去掉不必要的解压步骤,直接指定要部署的zip包:

deploy:
  runs-on: ubuntu-latest
  needs: build
  environment:
    name: 'Production'
    url: ${{ steps.deploy-to-webapp.outputs.webapp-url }}
  permissions:
    id-token: write #This is required for requesting the JWT

  steps:
    - name: Download artifact from build job
      uses: actions/download-artifact@v4
      with:
        name: python-app

    # 移除不必要的unzip步骤
    - name: Login to Azure
      uses: azure/login@v2
      with:
        client-id: ${{ secrets.xx}}
        tenant-id: ${{ secrets.xx}}
        subscription-id: ${{ secrets.xx}}

    - name: 'Deploy to Azure Web App'
      uses: azure/webapps-deploy@v3
      id: deploy-to-webapp
      with:
        app-name: 'fast-api-port'
        slot-name: 'Production'
        package: release.zip # 关键:明确指定要部署的zip包!

额外排查步骤(如果修正后仍有问题)

  1. 检查文件是否存在:在deploy阶段加一个ls -la步骤,确认下载的artifact是否存在:
    - name: Verify downloaded artifact
      run: ls -la
    
  2. 查看Azure部署日志:登录Azure Portal,进入你的Web App,在「部署中心」→「日志」里查看更详细的部署记录,Azure会在这里显示实际部署了多少文件、有没有报错。
  3. 确认启动命令:如果文件成功部署但应用仍无法运行,检查Web App的「配置」→「通用设置」里的启动命令是否正确(比如gunicorn main:app这类FastAPI的启动命令)。

备注:内容来源于stack exchange,提问作者Thomas Segato

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.14 18:08:09