发布应用


本教程将指导你如何通过 EnOS 企业容器平台快速构建和部署应用、将应用发布至指定集群中,并且测试使用应用。

场景描述

通过 EnOS 企业容器平台将名为 uic 的应用发布至 alpha 集群中,并使用该服务查询个人信息。

任务描述

在应用开发项目中,完成应用 uic 的容器配置,流水线创建和发布上线。创建部署配置、服务配置和路由配置,然后为其创建流水线,添加构建、代码扫描和部署三个任务,点击运行,启动流水线,完成以上任务,并使用该服务查询个人信息。


基于上述需求,快速发布应用的流程如下图所示:


../_images/app_deployment_process.png

前提条件

  1. EnOS企业容器平台中已创建应用开发项目,并且名为 uic 的应用已经创建完成,应用代码已保存到 Git 仓库。

  2. 用户为应用开发项目的成员,且拥有应用 uic 的开发权限。详细步骤,参考 管理项目和应用基本信息

步骤 1:创建部署配置

该步骤为应用 uic 创建部署配置,完成部署应用所需要的资源详细信息。

  1. 登录企业容器平台(可联系 EnOS Support 获取 URL)服务。

  2. 在左侧导航栏,选择 容器 > Deployments

  3. 点击 新建 Deployment,选择 表单创建 方式,提供如下部署配置:

    • 应用名称:uic

    • 环境:alpha

    • 集群:alpha-k8s-cn4

    • 副本数:1

    • CPU最小值:0.1 核;CPU 最大值:0.8 核

    • Memory 最小值: 0.1G;Memory 最大值:0.5G

    • 就绪探针:开启

    • 超时时间:120

    • 探测周期:2

    • 失败重试次数:3

    • 探测延迟:20

    • 探针方式:tcpSocket;TCP 端口:8080

    • 容器最小就绪时间:30s

    • 说明:应用 uic 的 alpha 环境部署配置

    ../_images/deployment_1.png ../_images/deployment_2.png
  4. 点击 确定 按钮,保存部署配置。

步骤 2:创建配置字典并更新部署配置

该步骤为应用 uic 创建配置字典,并更新已有的部署配置信息:

  1. 在左侧导航栏,选择 容器 > Config Maps

  2. 点击 新建 Config Map,提供如下配置字典信息:

    • 名称:输入 Config Map 名称

    • 应用:uic

    • 环境:alpha

    • 集群:alpha-k8s-cn4

    • 数据:手动输入,Key: application.properties;Value: 为 application.properties 文件的内容

    • 说明:应用 uic 的 alpha 环境的配置字典

  3. 点击 确定 保存配置字典信息。

    ../_images/config_map1.png
  4. 在导航栏点击 Deployments,选择步骤 1 创建的部署配置,点击 编辑 按钮。

  5. 编辑部署配置中的 Config Map,如下图所示:

    ../_images/update_config_map.png

步骤 3:创建服务配置和路由配置

该步骤为应用 uic 创建服务配置和路由配置,以支撑 uic 应用对集群外部暴露 Web 服务。


服务配置步骤如下:

  1. 在左侧导航栏,选择 容器 > Services

  2. 点击 新建 Service,提供如下服务配置信息:

    • 应用:uic

    • 环境:alpha

    • 集群:alpha-k8s-cn4

    • 类型:ClusterIP

    • 端口配置:8080,8080,TCP

    • 说明:应用 uic 的 alpha 环境服务配置

  3. 点击 确定 按钮,完成服务配置。

    ../_images/service.png


路由配置详细步骤如下:

  1. 在左侧导航栏,选择 容器 > Routes

  2. 点击 新建 Route,提供如下路由配置信息:

    • 应用:uic

    • 环境:alpha

    • 集群:alpha-k8s-cn4

    • 主机名:uic

    • 路径:/api/user

    • 服务:uic

    • 端口:8080

    • 说明:应用 uic 的 alpha 环境路由配置

  3. 点击 确定 按钮,完成路由配置。

    ../_images/route.png

步骤 4:创建流水线

该步骤为应用 uic 创建流水线,一条流水线由基本信息、视图和任务组成,创建一条流水线需经以下几个步骤:

配置基础信息

  1. 在左侧导航栏,选择 研发 > 流水线

  2. 点击 新建流水线,提供如下基本信息:

    • 应用名称:uic

    • 流水线名称:uic-pipeline-dev

    • 语言/版本:java_1.8.0

    • 工具:maven_3.3.9

    • 仓库地址:

    • 触发设置:手动触发

    ../_images/pipeline_basic.png

配置阶段

  1. 选择 构建,并提供如下信息:

    • 任务名称:构建

    • Docker 文件路径:Dockerfile

    • Docker 镜像仓库:harbor.eniot.io

      ../_images/task_build.png
  2. 选择 扫描,并提供如下信息:

    • 任务名称:代码扫描

    • 待扫描代码:src/main/java

      ../_images/task_code_scan.png

    备注

    对于构建和代码扫描规则的详细介绍,参考 新建流水线

  3. 选择 部署,并提供如下信息:

    • 环境:alpha

    • 任务名称:部署

    • 集群:alpha-k8s-cn4

    • 部署类型:Deployment

    • 部署名称:uic-deployment-dev

      ../_images/task_deployment.png
  4. 点击 新建流水线 按钮,保存流水线配置。

步骤 5:运行流水线并查看结果

该步骤运行配置的流水线,并查看流水线运行结果。

  1. 在创建的流水线列表中,点击创建的流水线 uic-pipeline-dev,打开流水线详情页面。

  2. 点击 运行 按钮,选择代码仓库分支,点击 运行

    ../_images/run_pipeline1.png
  3. 查看流水线运行结果。

    • 点击 BUILD,查看构建任务运行结果,包括构建日志以及镜像地址:

      ../_images/build_result.png
    • 点击 SCAN,查看代码扫描任务运行结果,包括扫描日志和扫描结果地址:

      ../_images/scan_result.png
    • 点击 DEPLOY,查看部署任务运行结果:

      ../_images/deploy_result.png

步骤 6:测试运行发布的应用

应用部署成功后,测试运行应用,确保应用按照配置的服务信息可正常运行。