【Azure App Service】在App Service中使用az cli命令创建 Sidecar Container

简介: 本文详解 Azure App Service 中 Sidecar 容器的 CLI 实现方案。针对门户无“Container”选项的问题,提供 `az webapp sitecontainers create/update` 命令的完整六步操作流程(含环境配置、主/边车容器部署),并支持状态验证与最佳实践说明,替代繁琐 ARM 模板。

问题描述

在使用 Azure App Service 时,参考官方文档发现支持 Sidecar Container。

但在实际创建或已有的 App Service 实例中,无法在门户中找到“Container”的相关选项,无法启动Sidecar。

文档上提出使用ARM模板的方式启动,虽然也是可以,但想知道有没有更简洁的方式(使用az cli命令)来实现这个目的呢?

 

问题解答

当然可以实现。

使用 az webapp sitecontainers create/update 就可以实现创建 Sidecar Container。

 

执行步骤

第一步:固定云和订阅

az cloud set --name AzureChinaCloud


az login


az account set --subscription <your subscription id>


az account show --query "{sub:id,name:name,user:user.name}" -o table


第二步:设置变量(可改)

$loc = "chinaeast2"

$rg = "your resource group name"

$plan = "your app service plan"

$app = "your app service name"


第三步:创建资源组 + Linux Plan

az group create -n $rg -l $loc

az appservice plan create -g $rg -n $plan --is-linux --sku B1 -l $loc


第四步:创建 WebApp(注意策略要求 https-only)

az webapp create -g $rg -p $plan -n $app --runtime PYTHON:3.11 --https-only true

az webapp log config -g $rg -n $app --docker-container-logging filesystem


第五步:创建主容器 main(sitecontainers)

az webapp sitecontainers create -g $rg -n $app --container-name main --image mcr.microsoft.com/dotnet/samples:aspnetapp --target-port 8080 --is-main true --startup-cmd "dotnet aspnetapp.dll" -o none


第六步:创建 sidecar(最小镜像、可探活)

az webapp sitecontainers create -g $rg -n $app --container-name sidecar --image mcr.microsoft.com/azuredocs/aci-helloworld --target-port 80 --is-main false

 

验证方式

当以上六步执行完成后,可以使用如下的命令来验证当前app下的container及状态

az webapp sitecontainers list -g $rg -n $app -o table

az webapp sitecontainers status -g $rg -n $app -o table

az webapp sitecontainers status -n $app -g $rg --container-name "sidecar" -o json

 

以上命令,只需要在第二步修改变量名称后,就可以成功执行

 

附录

1:什么是 Sidecar

Sidecar 是一种容器架构模式:

  • 一个主容器(Main container)负责核心业务
  • 一个或多个 Sidecar 容器负责辅助能力,例如:
  • 日志收集
  • 代理(如 Envoy)
  • 配置同步
  • 安全或监控

它们共享:同一主机环境 和 网络命名空间(通常 localhost 通信)

 

2:在 App Service 中的实现(SiteContainers)

  • Sidecar 模式通过 sitecontainers 资源定义
  • 主容器与 sidecar 是独立声明的容器对象
  • 每个容器有自己的配置(镜像、registry、认证等)

不再依赖传统 WebApp 的 App Settings(如 DOCKER_REGISTRY), 所有容器配置必须在 sitecontainers 中重新定义。

 

参考资料

在 Azure 应用服务中为 Linux 应用配置边车容器:https://docs.azure.cn/zh-cn/app-service/tutorial-sidecar?tabs=portal#3-add-a-sidecar-container

az webapp sitecontainers create : https://learn.microsoft.com/en-us/cli/azure/webapp/sitecontainers?view=azure-cli-latest#az-webapp-sitecontainers-create

 


当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

相关文章
|
2月前
|
SQL 自然语言处理 数据挖掘
智能问数如何帮助企业实现从'看报表'到'问问题'的思维转变?
截至2026年5月,企业数据智能正从“看报表”迈向“问问题”,核心是将数据分析权下放至业务一线。当前主流技术路线有三:预置指标层(易用但扩展难)、NL2SQL(通用性强但准确率低)、本体语义层(如UINO优锘科技,准确率高、跨域能力强,需前置语义治理)。选型关键不在技术先进性,而在匹配企业数据基础、问题复杂度与长期演进需求。
|
4月前
|
弹性计算
阿里云管理控制台入口链接大全:云服务器ECS和轻量应用服务器入口整理
阿里云管理控制台官方入口大全:含ECS与轻量应用服务器产品页及后台直达链接;统一首页为所有云服务导航中枢,支持快速切换与高效管理,新手入门必备指南。
|
4月前
|
人工智能 数据可视化 BI
企业智能体能否替代财务人员?专家深度解读
大模型与企业智能体正推动财务数字化转型,自动记账、报税等重复工作已可自动化。但AI无法替代财务人员的战略决策、风险把控与业务协同能力。本文厘清人机边界,倡导“赋能而非替代”,助力财务人转向高价值分析与决策岗位。
509 2
|
4月前
|
人工智能 弹性计算 运维
OpenClaw是什么?这货怎么安装?阿里云龙虾AI快速部署方法(保姆级教程)
OpenClaw(“龙虾”)是MIT开源、本地优先的AI执行框架,OpenClaw官方部署教程:https://t.aliyun.com/U/WxO5TJ 能让大模型真正“动手干活”——自动操作文件、浏览器、办公软件等。支持多模型、多平台(飞书/Telegram等),数据自主可控。阿里云提供9.9元起一键部署方案。
828 4
|
4月前
|
弹性计算 安全 Cloud Native
免费、安全、高性能!阿里云Alibaba Cloud Linux深度解析:CentOS停服后的最佳替代方案
Alibaba Cloud Linux是阿里云自研的免费、稳定、安全、高性能Linux操作系统,官网:https://t.aliyun.com/U/KReVDn 深度优化云服务器ECS,兼容CentOS/RHEL生态。支持x86/ARM架构,提供长达十年维护,含热补丁、等保合规镜像及云原生优化,是CentOS停服后的理想替代方案。(239字)
|
2月前
|
数据采集 小程序 数据挖掘
为什么数据分析停在报表里?从采集、分析到触达复盘
本文从数据采集、行为分析、客户数据、智能运营和效果复盘几个环节,拆解数据分析为什么容易停在报表里,以及如何把分析结果继续转成人群、触达和复盘动作。
|
3月前
|
人工智能 自然语言处理 供应链
为什么 MCP 在协议层会有 prompt injection的问题:工具描述如何劫持 agent 上下文
MCP(Model Context Protocol)虽成AI Agent主流集成标准,但其将工具描述全量注入上下文的设计,导致“Context Poisoning”——恶意指令可借工具元数据污染LLM推理。OWASP将其列为LLM应用头号漏洞,2025年已致超10万站点遭袭。根本风险在于协议层信任模型缺失,非清洗不可用。
326 12
为什么 MCP 在协议层会有 prompt injection的问题:工具描述如何劫持 agent 上下文
|
3月前
|
消息中间件 网络协议 测试技术
socket长连接在手游场景下的技术实践
本文介绍了37手游基于B站goim框架自研长连接系统的实践。系统采用分层设计,支持多协议和发布/订阅机制,用于直播弹幕、实时推送等场景,实现了高性能与业务适配。
255 4
socket长连接在手游场景下的技术实践
|
3月前
|
Rust 前端开发 JavaScript
Vite 8 背后的秘密:为什么尤雨溪选择了 Oxc
Oxc(The Oxidation Compiler)是用Rust打造的高性能JS/TS工具链,含解析、Lint、格式化、转换、压缩等核心组件。内存零GC、零拷贝解析、共享AST架构,使Oxlint比ESLint快100倍、Oxfmt比Prettier快30倍。已集成Vite 8,5分钟即可升级开发体验!
765 1
Vite 8 背后的秘密:为什么尤雨溪选择了 Oxc
|
3月前
|
前端开发 安全 小程序
一站式陪诊平台源码开发:预约、支付、评价全流程拆解
随着医疗服务需求升级,陪诊平台逐渐成为热门赛道。本文从软件开发视角出发,系统拆解一站式陪诊平台源码的核心功能模块,包括预约管理、支付系统、服务履约与评价体系,深入分析其技术实现与商业逻辑。