如何停止Azure ContainerApp实例而不删除重新部署?
Azure ContainerApp 停止实例(不删除)的解决方案
核心问题说明
Azure ContainerApp 没有直接的「停止实例」按钮,且系统强制要求至少保留一个活动修订版(这就是你无法将所有修订版设为非活动的原因),但可以通过以下两种方式实现停止运行且保留资源的效果:
方法1:强制设置实例数为0
你之前设置的0-1是弹性缩放范围,系统可能因触发器(如HTTP请求)自动拉起实例。需将实例数固定为0:
- 门户操作:
- 进入目标ContainerApp,左侧导航选择「缩放」
- 将「最小实例数」和「最大实例数」都设为
0 - 保存配置后,所有运行中的实例会被逐步终止
- AZ CLI命令:
az containerapp update --name <你的ContainerApp名称> --resource-group <资源组名称> --min-replicas 0 --max-replicas 0
方法2:用占位镜像替换活动修订版
先部署一个无业务逻辑的占位镜像,再将原有业务修订版设为非活动:
- 进入ContainerApp的「修订版」页面,点击「创建修订版」
- 选择轻量镜像(如
busybox:latest),设置启动命令为sleep infinity(确保不消耗资源) - 部署完成后,将原有业务镜像的修订版设为非活动状态
- 需要恢复时,直接将原有修订版重新设为活动,或重新部署原有镜像
重新部署原有镜像到ContainerApp的操作
门户里并非没有部署选项,入口在修订版管理模块:
- 门户操作:进入「修订版」页面,点击「创建修订版」,在镜像配置环节选择你注册表中的目标镜像,完成参数配置后部署即可
- AZ CLI命令:
az containerapp update --name <你的ContainerApp名称> --resource-group <资源组名称> --image <你的镜像完整地址>
内容的提问来源于stack exchange,提问作者pseabury
相关产品推荐
相关产品推荐

