快速上手
假设代码储存于集团gitlab,按照下面步骤即可实现静态代码
->运行的应用
。
一、从代码到镜像
(Docker)镜像是容器世界中应用的标准化封装方式,换言之,代码必须先制作成镜像,才能运行成容器。
1 获取个人的gitlab Access Tokens
在gitlab上有代码仓项目pull权限的人员,登录
gitlab
,在右上角选中Settings,点击Access Tokens
,进入个人token生成页面;一般不要填写Expires at,即永久有效;
在Scopes勾选全部的授权范围;
点击Create personal access token绿色按钮;
点击复制按钮将生成的token保存下来,以备下一步使用。
2 关联代码仓库,激活代码源
信云+上切换到
CI/CD
-代码仓库,点击关联代码仓库;选择Gitlab,点击
添加gitlab
;代码源地址处输入http://gitlab.hisense.com,Private Token输入Step1获得的token,点击确定;
添加代码源后,在此页面将展示此token对应人员所有有权限的代码源,请对本容器项目所依赖的代码源点击激活;
返回代码仓库菜单首页,将会看到已激活的所有代码源。
3 创建流水线,关联代码源
信云+上切换到
CI/CD
-流水线,点击新建流水线
;填写流水线名称,按需选择模板创建(此处假设选择java模板),关联已激活的代码源,按需选择流水线执行通知;
点击新建的流水线名称,点击
流水线定义
,对每一个流水线任务的定义进行检查和修改,如下图创建好的流水线,可随时修改、随时执行。
4 执行流水线,生成镜像
点击
立即执行
,选择代码分支;稍等一会流水线初始化,可以在执行记录看到流水线状态为执行中,点击执行记录可见实时日志;
等待流水线执行完毕,可以在执行记录看到流水线状态为执行成功;
信云+上切换到容器服务-镜像仓库,可以看到流水线生成、推送的镜像,如未展示请点击右上方按钮更新Harbor,稍等2分钟再刷新一下。
关于流水线更多功能的介绍,请查看CI/CD章节。
二、从镜像到容器服务
使用镜像仓库中的镜像,部署成可访问的容器服务。
1 创建服务
接上一步,点击镜像的“部署”按钮,或者切换到信云+上切换到
容器服务
-应用管理-服务,点击创建服务
,选择镜像部署,选择镜像名称,点击配置容器;配置容器:确认要使用的镜像版本,指定必要的计算资源规格、端口声明、环境变量,点击下一步;
配置服务:指定服务名称,点击下一步;
配置节点:保持默认,点击审查提交;
审核配置:检查后点击提交。
2 观察服务启动
在1 创建服务中配置服务时,指定了服务实例数(默认为1),配置审核提交后,将按服务的声明自动启动Pod;
在服务列表中可见此服务状态由启动中->已启动;
同时,在服务实例列表中可见Pod产生,状态由暂停->运行;
可以在事件中,看到服务启动过程发生了哪些事(在节点上给Pod分配网络、拉取镜像到节点、创建容器、启动容器...);
启动容器后,可以在日志中看到应用打印到标准输出的日志了。
3 访问服务
容器间相互调用,可以使用服务基本信息中服务暴露-
服务域名
的方式,同一个namespace下还可以省略.后面的内容;比如,登陆一个容器的终端,使用curl等命令调用另一个服务,可以看到调用链路通畅(404是因为没有指定具体接口,server端按实际情况响应404);
如果是外部调用容器服务,若为http协议,可在
网络管理
-7层网关,点击创建网关
,填写完后,点击创建;使用此主机名即可从外部访问该容器服务。
4 升级服务
在
容器服务
-服务列表中,点击编辑
,可修改镜像版本为更新的版本,也可同时修改计算资源规格、健康检查、环境变量、配置文件挂载、存储卷挂载等各种配置项;修改后点击滚动升级,会展示本次修改的所有内容,然后即按照先创建新pod,等新pod就绪再删除老pod的策略滚动升级服务;
(按需)在信云+上切换到
CI/CD
-流水线定义,打开流水线的滚动部署任务的开关,并检查完善此任务定义,再执行流水线,能实现每次执行流水线自动升级服务到最新镜像版本的作用。
关于服务管理更多功能的介绍,请查看容器服务章节。