本例中,将与容器镜像服务、阿里云 code 进行集成,当容器新镜像构建完成后,可以自动进行部署等。

前提条件

  • 准备一个可用的集群,参见 创建集群
  • 准备一个代码仓库,推荐使用阿里云容器镜像服务,支持阿里云code、github、Bitbucket、私有 GitLab 和本地仓库等,您可以在 alicode 上新建一个代码库。

    本例中,为了方便操作,我们准备了一个已有的代码库,您可以把它派生成自己的代码库,只需要打开 重新部署触发器示例,单击 派生(fork project)。如果您看不到该按钮,请先登录。

操作步骤

自动创建 Docker 容器镜像

  1. 登录 容器镜像服务管理控制台
  2. 点击右上角的 创建镜像仓库 按钮,在接下来的页面中填入相关信息。
  3. 设置代码源处,已经绑定了你的alicode账号,选择准备好的代码库。
  4. 勾选 代码变更时自动构建镜像,选择 Branch:master,Dockerfile目录填写 “/“,镜像版本填写 “latest”。


  5. 镜像仓库创建成功后,单击页面右上角的 立即构建,可以从构建记录里看到构建结果。


创建应用

  1. 找到上面构建的镜像仓库,进入对应的管理页面。
  2. 在左侧导航栏,单击 基本信息,然后单击 部署应用。您也可以记录镜像的地址,在容器服务管理控制台中,根据集群网络类型,输入正确的镜像地址,创建应用,参见 创建应用


  3. 自动转到容器服务管理控制台的创建应用界面。需要勾选 检查最新 Docker 镜像


  4. 在应用配置页,镜像名称已经输入,接下来配置 简单路由配置数据卷




  5. 回到应用列表页面,等应用就绪后,通过应用的路由地址访问部署好的应用。该应用是一个示例,请注意红框内的内容。


创建触发器并实现重新部署

  1. 登录 容器服务管理控制台
  2. 单击左侧导航栏中的 应用
  3. 选择目标应用并单击应用的名称。
  4. 在应用详情页面,单击 创建触发器


  5. 触发器行为 下拉框中选择 重新部署,并单击 确定

    当您对应用使用的镜像有写权限时,您可以勾选 关联到镜像更新。勾选后,当容器新镜像构建完成后,可以使用最新镜像自动对应用进行重新部署。



  6. 勾选 关联到镜像更新,本示例中,该操作会触发在关联镜像 test-for-trigger 的 Webhook 上自动创建一条 Webhook。
  7. 登录 容器镜像控制台。进入目标仓库管理页,单击左侧导航栏的 Webhook,查看是否自动创建一条 Webhook 规则。


  8. 在 阿里云code 中修改代码,会自动构建镜像。

    打开 阿里云code 代码库,单击左边导航栏的 文件,找到“demo/index.php”文件,单击编辑。



  9. 找到278行,将“OSS RTMP直播示例”改成“OSS RTMP直播示例-test for trigger”,填入提交信息,并提交修改。


  10. 提交后,会自动触发镜像构建,构建成功后会触发自动部署。回到应用列表页面,当应用状态变为“就绪”后,访问路由地址,可以看到修改已经自动生效。从而实现代码变更自动触发应用自动部署的功能。


后续操作

您可以通过三方集成系统进行触发,使用 GET 或者 POST 都可以进行触发,例如使用 curl 命令触发。

调用重新部署触发器:

curl 'https://cs.console.aliyun.com/hook/trigger?triggerUrl=Y2E1Y2UwY2NhOWRhMzQ2ZDY4ZmYyZmYyNGZiYTAyNzdjfHRlc3QtZm9yLXRyaWdnZXItZGVmYXVsdHxzY2FsaW5nfDE5dXAyajhoOXR1NHN8&secret=48556533517a6f567774725934756551fff0c4ccee34046cceef2c97ebacfd62'