腾讯云操作文档 #

1 腾讯云构建->部署流程 #

  1. 本地提交代码到仓库;
  2. 腾讯云镜像仓库触发构建规则,在线构建镜像;
  3. 根据交付流水线设置(如有设置),更新指定工作负载;

2 容器镜像服务 #

2.1 实例列表 #

构建镜像的前提

2.2 命名空间 #

实例中必须存在命名空间方可创建镜像仓库,建议以系统维度新建命名空间。

2.3 镜像仓库 #

腾讯云镜像仓库服务;

2.3.1 新建镜像仓库 #

第一步,如图2.3.1-1;若镜像是本地直接推送,镜像来源则选择“本地推送镜像”,如需腾讯云构建,则选择“平台构建镜像”; 图2.3.1-1 第二步,如图2.3.1-2;代码源点击仓库类型,此处用私有GITLAB(如未授权仓库,请在此页面点击授权;注意:已授权过的,不要点击刷新或重新点击授权,等待coding异步刷新,可能会比较慢。) 触发规则根据公司业务设置即可; Dockerfile路径默认为项目根目录Dockerfile文件,如路径非根目录Dockerfile,请填写路径相对路径; 版本规则建议勾选更新时间和commit号,因为更新时间规则是YYYYMMDD,仅精确到天,只勾选更新时间会覆盖镜像;

图2.3.1-2

2.4 交付流水线 #

新增完镜像后,可新建交付流水线,如图2.4-1; 其中镜像配置(与镜像仓库的构建规则类似,有细微差别,如直接设置交付流水线,可略过镜像仓库的构建规则设置),请设置与镜像仓库一致。 应用部署中,请选择需要部署的工作负载(因此设置交付流水线前,必须存在工作负载) 图2.4-1

2.5 访问控制 #

开放后可允许工作负载拉取镜像或外网拉取/推送等操作; 为了保证工作容器服务能正常拉取镜像,必须开放内网访问,如图2.5-1,地域与私有网络,必须跟容器集群一致(子网无需一致) 图2.5-1

3 容器服务 #

3.1 集群 #

新建集群,如图3.1-1,k8s版本必须选择 v1.12.x及以上版本(目前版本的容器镜像服务已更新支持v1.18.x版本); 集群新建完毕后,需在“集群->组件管理”中新建TCR组件(为了能解析容器镜像服务的域名,以拉取镜像),如图3.1-2;

图3.1-1 图3.1-2

3.2 命名空间 #

建议与容器镜像服务的命名空间一致

3.3 工作负载 #

工作负载类型请参考k8s 这里我们常用Deployment 新建工作负载如图3.3-1, 如无需开放外网端口,访问设置中请勿设置启用 内存限制上下限不建议差异太大

图3.3-1

4 紧急异常处理 #

4.1 节点异常 #

节点异常时,集群的状态会显示机器异常,如图4.1-1列,此时解决方案为:

  • 点击节点列表,定位异常节点;
  • 封锁节点,防止有新的pod挂载在该节点,如图4.1-2;
  • 点击云服务器,搜索该服务器,重启;
  • 待节点变为健康后,解除封锁即可;

图4.1-1 图4.1-2

4.2 腾讯云镜像构建异常 #

  • 检查执行状态,如有超时,dockerfile镜像文件引用镜像修改为国内源,如超时还在发生,请提交工单;
  • 如执行状态异常,点击执行详情查看日志,排查是否为代码异常,非代码异常请提交工单;
  • 如紧急情况,可本地构建镜像push,命令如图4.2-1所示(非紧急情况不建议这么做),本地推送需要开放外网(参考2.5、访问控制)

图4.2-1

5 参考文档 #

上次更新: 2/21/2023, 4:14:41 PM