head

阿里容器服务-标签

probe

作用:

用于检查服务的健康情况 。

方法:

  • 通过URL进行检查,支持http/tcp协议
  • 通过shell脚本检查。

详细用法

 

rolling_updates

作用:

在更新某个服务时,只要scale标签定义大于1时,以最小化停止服务时间来更新容器。

parallelism

作用:

设置每次并行更新的容器数量。要与上面的参数配合使用。

 

depends

作用:设置服务的依赖关系。多个依赖使用逗号分隔。

 

scale

作用:设置容器数量。

 

routing

作用:设置该服务的域名

格式:

aliyun.routing.port_$container_port: [http://]$domain|$domain_prefix[:$context_path]
  • $container_port: 容器端口,注意 该处不是主机的端口
  • $domain: 域名,需要用户填写自己的域名
  • $domain_prefix: 域名前缀,如果填写域名前缀,容器服务会提供给您一个测试用的域名,域名后缀是wordpress.<cluster_id>.<region_id>.alicontainer.com
  • $context_path: 请求的路径,即可以根据请求的路径来选择区分不同的后端容器

例子

web:
  image: wordpress:4.2
  links:
    - db:mysql
  labels:
    aliyun.routing.port_80: wordpress;http://wp.sample.com/context
db:
  image: mysql
  environment:
    - MYSQL_ROOT_PASSWORD=password

routing.session_sticky=(true|false)

作用:设置会话保持,即在请求路由时,在一段时间来,会把同一个session指定到同一个后端容器。而不是随机或根据什么算法。

 

global
作用:设置该服务为全局服务。这种服务器需要部署到每一个节点上,例如一些监控服务。

 

服务部署约束affinity:service

作用:用来约束服务之间的亲和度,其实说白了多用于把从服务如mysql slave安装在与master不同的节点上。不然,一个节点挂了,从库也会挂掉。

例子参考

master:
  image: mysql:5.6
  environment:
    - MYSQL_USER=user
    - MYSQL_PASS=test
    - REPLICATION_MASTER=true
    - REPLICATION_USER=repl
    - REPLICATION_PASS=repl
  ports:
    - 3306
slave:
  image: mysql:5.6
  environment:
    - MYSQL_USER=user
    - MYSQL_PASS=test
    - REPLICATION_SLAVE=true
    - affinity:service!=master
  ports:
    - 3306
  links:
    - master:mysql


external

作用:设置该服务直接链接到外部地址。

通过 external,描述一个并没有部署在集群中的 RDS 服务,并提供给部署在集群中的 WordPress 使用。

wordpress:
  image: wordpress:4.2
  ports:
    - 80
  links:
    - db:mysql
  environment:
    - WORDPRESS_DB_USER=cloud
    - WORDPRESS_DB_PASSWORD=MYPASSWORD
    - WORDPRESS_DB_NAME=wordpress
db:
  external:
    host: rdsxxxx.mysql.rds.aliyuncs.com
    ports:
      - 3306


变量替换

在模板里可以使用变量。

 

posted @ 2017-08-10 16:31  gorgage  阅读(248)  评论(0编辑  收藏  举报
foot