容器服务编排模板文件使用的标签兼容大部分 Docker Compose V1 和 V2 版本实现的标签,并在社区版本的基础上提供了很多扩展能力。
扩展能力的标签
容器服务扩展了编排模板的部署和生命周期管理能力,所有扩展能力都被描述在 labels
标签下面,作为子标签使用。
标签 | 说明 |
---|---|
probe | 设置服务的健康性检查。 |
rolling_updates | 设置服务滚动更新。 |
parallelism | 设置 rolling_updates 每次并行更新的容器数量。注意:此标签必须和 rolling_updates 配合使用,单独使用无效。 |
depends | 设置服务的依赖关系。 |
scale | 设置该服务的容器数量,横向扩展服务。 |
routing | 设置该服务的访问域名。 |
routing.session_sticky | 设置 routing 在做请求路由的时候,是否保持 session sticky,即会话保持。注意:此标签必须和 routing 配合使用,单独使用无效。 |
lb | 通过自定义阿里云负载均衡 nat 映射的方式来暴露服务端口到公网或者内网。 |
日志 | 和阿里云日志服务集成,采集容器日志并且发送到阿里云日志服务。 |
global | 设置该服务为全局服务。 |
功能增强的标签
容器服务提供服务部署约束(affinity:service) 标签用来设置该服务的部署约束条件。
额外支持的标签
标签 | 说明 |
---|---|
external | 设置该服务直接链接到外部地址。 |
dns_options | 设置 DNS 选项,和docker run 命令中的--dns-opt参数语义一致。 |
oom_kill_disable | 设置是否禁止 OOM Killer, 和docker run 命令中的--oom-kill-disable 参数语义一致。 |
变量替换
容器服务支持参数化的 Docker Compose 模板。模板中可以包含环境变量作为参数,当模板部署时会提示输入参数值,并在部署时对模板进行变量替换。
更多详细信息,参见变量替换。
容器重新调度
容器服务支持对 Docker 容器的重新调度:当一个节点失效时,容器可以被自动调度到其他可用节点自动运行。
更多详细信息,参见容器重新调度。
高可用性调度
为了使应用有更高的可用性,容器服务支持将同一个服务的容器调度在不同的可用区(availability zone)里。当某个可用区故障时,应用依然能够提供服务。
更多详细信息,参见高可用性调度。
不支持的 Docker Compose 标签
容器服务暂不支持 Docker Compose 的部分标签。有关容器服务暂不支持的标签,参见不支持的 Docker Compose 标签。