部署自定义启动脚本至Azure App Service后文件缺失求助
问题原因与解决方案
你的操作核心问题在于使用--type=startup参数时,Azure App Service会强制将脚本部署到专属的启动脚本目录,忽略你指定的--target-path参数。
1. 先找对文件位置
通过Kudu SSH连接后,去/home/site/scripts/目录下查找你的my-app-startup-file.sh——这是--type=startup参数指定的默认部署目录,不管你填了什么target-path,文件都会被放到这里。
2. 两种修正方案
根据你的实际需求选择:
- 如果只是想把脚本上传到/wwwroot目录:去掉
--type=startup参数,直接执行命令:az webapp deploy --resource-group my-group --name my-app --src-path startupfiles/my-app-startup-file.sh --target-path=/home/site/wwwroot/ - 如果是要配置App Service的启动脚本:保留
--type=startup,无需指定target-path(Azure会自动处理路径),之后需要在App Service的配置中设置启动命令为脚本的实际路径:/home/site/scripts/my-app-startup-file.sh。对应的命令可以用:az webapp config set --resource-group my-group --name my-app --startup-file "/home/site/scripts/my-app-startup-file.sh"
3. 验证部署有效性
- 执行部署命令后,除了检查JSON响应,还可以通过Kudu的「部署历史」确认文件是否成功上传;
- 用
az webapp config show --resource-group my-group --name my-app命令查看启动配置是否正确生效。
内容的提问来源于stack exchange,提问作者Vagharshak Avetisyan
相关产品推荐
相关产品推荐

