全部产品
容器服务

使用配置项实现多套环境

更新时间:2017-07-23 22:58:47   分享:   

应用分为代码和配置两个部分,当应用容器化之后,通常通过容器环境变量的方式传递配置,从而实现同一个镜像使用不同的配置部署多套应用。

swarm mode 模式支持 Compose V1/V2 和 Compose V3 的编排语法,V3 的环境变量的语法参考 环境变量

使用限制

  • 关联配置文件时,仅能关联与应用处于同一地域中的配置文件。
  • 目前,在创建应用时关联配置文件的场景仅适用于通过编排模板创建应用。

应用场景

创建应用

  1. 登录 容器服务管理控制台

  2. 单击左侧导航栏中的 配置项

  3. 选择需要创建配置项的地域并单击 创建配置项

    1

  4. 填写配置文件的信息并单击 确定

    • 配置文件名:可包含 1~128 个字符。
    • 描述:最多可包含 128 个字符。
    • 配置项:您最多可以设置 50 个配置项。填写 变量名称变量值 后,需要单击右侧的 添加
      您也可以单击 编辑配置文件 在弹出的对话框里编写配置项并单击 确定

      2

    本示例中设置了 size 变量。

    1

  5. 单击左侧导航栏中的 应用并单击 创建应用

  6. 填写应用的基本信息并单击 使用编排模板创建

    注意:**部署集群** 需要和所创建的配置项在同一个地域。

  7. 填写编排模板并单击 创建并部署

    • Compose V1/V2 编排示例:

      其中,size 即为动态的变量,这个变量会被配置项中的数值覆盖。

      1. web:
      2. image: wordpress:4
      3. ports:
      4. - 80
      5. restart: always
      6. labels:
      7. aliyun.logs: /var/log
      8. aliyun.probe.url: http://container/license.txt
      9. aliyun.probe.initial_delay_seconds: '10'
      10. aliyun.routing.port_80: http://wordpress
      11. aliyun.scale: $size #注意
    • Compose V3 编排示例:

      其中,size 即为动态的变量,这个变量会被配置项中的数值覆盖。

      1. version: '3'
      2. services:
      3. web:
      4. image: wordpress:4
      5. ports:
      6. - 80
      7. deploy:
      8. replicas: $size
      9. restart_policy:
      10. condition: on-failure
  8. 在弹出的对话框中,选择要关联的配置文件,单击 替换变量 并单击 确定

    3

更新应用

如果创建应用时关联了配置文件,您可以通过修改配置项并重新部署的方式更新应用。

  1. 登录 容器服务管理控制台

  2. 单击左侧导航栏中的 配置项

  3. 选择需要修改的配置项所在的地域,选择需要修改的配置项并单击 修改

    1

  4. 在弹出的确认对话框中,单击 确定

    2

  5. 选择要修改的变量并单击 编辑 (单击后变为 保存)。修改变量值,单击 保存并单击 确定

    3

  6. 单击左侧导航栏中的 应用,选择应用所在的集群,选择应用并单击 重新部署

    4

    更新完成后,容器数变为 2 个。

    5

触发更新

如果创建应用时关联了配置文件,您可以通过触发器触发的方式进行重新部署。

  1. 登录 容器服务管理控制台

  2. 单击左侧导航栏中的 配置项

  3. 选择需要修改的配置项所在的地域,选择需要修改的配置项并单击 修改

    1

  4. 在弹出的确认对话框中,单击 确定

    2

  5. 选择要修改的变量并单击 编辑 (单击后变为 保存)。修改变量值,单击 保存并单击 确定

    3

  6. 创建重新部署触发器。

    有关如何创建触发器的详细信息,参见 触发器

    4

  7. 触发重新部署触发器。

    1. curl "https://cs.console.aliyun.com/hook/trigger?triggerUrl=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
本文导读目录
本文导读目录
以上内容是否对您有帮助?