专栏首页TKETKE操作指南 - 自动化构建,生成Wordpress Docker业务镜像(五)
原创

TKE操作指南 - 自动化构建,生成Wordpress Docker业务镜像(五)

进行构建之前,我们先了解持续集成和持续交付的概念。

持续集成与持续交付

通过持续集成与持续交付提供优秀的 DevOps 环境,极大提高软件发布效率。如下图所示:

持续集成:持续集成强调开发人员提交了新代码之后,立即进行构建、(单元)测试。根据测试结果,您可以确定新代码和原有代码能否正确地集成在一起。 持续交付:持续交付在持续集成的基础上,将集成后的代码部署到运行环境。

优势: 通过在腾讯云容器服务上部署服务,开发人员在 Git 或其他代码平台提交新代码后,可立即进行构建、测试、打包集成。在持续集成的基础上,将集成的代码部署到预发布环境和现网环境上。可以这样理解,持续集成就是构建打包,持续交付就是部署。

容器部署是基于Docker业务镜像

Gitlab Dockerfile文件会引用腾讯云镜像仓库中的Docker基础镜像,将源代码添加至Docker基础镜像中,打包成Docker业务镜像。部署是基于Docker业务镜像。

腾讯容器云的构建功能(持续集成)

1.将giltab源代码和Dockerfile文件拉取到本地

2.基于Dockefile文件,制作Docker业务镜像(Dockerfile会引用腾讯云镜像仓库中的Docker基础镜像,将源代码添加至基础镜像中,打包成Docker业务镜像)

3.构建又分自动和手动,自动构建:当用户往代码仓库发起push操作时,如果符合自动构建规则,那么就会在腾讯云容器平台上进行容器镜像的自动构建,并将构建出来的容器镜像自动推送到腾讯云容器镜像仓库中。手动构建:用户需要人为手动进行触发构建。

构建(持续集成)步骤:

1.Dockerfile文件上传至gitlab

2.构建配置

3.构建日志内容说明

4.构建镜像验证

1.Dockerfile文件上传至gitlab

源代码和Dockerfile文件

Dockerfile文件内容:

第1行: FROM引用腾讯云基础镜像ccr.ccs.tencentyun.com/liangfeng/test:nginxV1

第2行: 通过MAINTAINER 说明作者和作者邮箱地址;

第3~4行:代码部署,由客户自行进行业务逻辑控制,3行功能是创建目录,4行是将当前目录下的文件添加至基础镜像

第5行:EXPOSE声明服务端口。(容器内的服务端口,这里是nginx的启动端口)

第6行:通过ENTRYPOINT设置业务镜像,开机自启动nginx服务。

说明:开头FROM和MAINTANER必须要指定;容器业务端口必须要用EXPOSE声明;开机自启动必须要用ENTYPOINT;由于Docker镜像是基于”层”,Dockerfile的内容越精简越好。

2.构建配置

我的镜像中,点击进入构建配置,填写好构建参数,然后点击完成。

1.代码源选择gitlab,Repository选择wordpress(gitlab上的项目)

2.触发方式勾选分为:添加新的Tag时触发和提交代码到分支时触发(意思是我们在gitlab上添加tag或进行提交代码操作,容器云平台会自动拉取代码,进行打包构建)

3.镜像版本命名规范自定义填写,分支/标签,更新时间,commit号根据需求勾选。(若都勾选,例如:构建成业务镜像名称是test-nginx-201907261035-1d096112584d036167c1cd50a335c0a58ff43f6a,test是命名规则,nginx是gitlab上的分支号,201907261035是生成业务镜像的当前时间,1d096112584d036167c1cd50a335c0a58ff43f6a是每次在gitlab提交后生成的commit号

4.覆盖镜像版本:生成的镜像同时会包含该tag。(可以理解为镜像别名,多打个tag)

5.Dockerfile路径:Dockerfile在文件源代码中的路径。(根据步骤1中Dockerfile和代码在同级目录,所以直接写Dockerfile即可)

6.构建目录:构建时的工作目录。(我这里填写的".",意思是执行当前目录下的Dockerfile文件)

点击完成,会跳转到镜像构建页面

我先在gitlab上提交代码,然后在镜像构建,执行浏览器F5刷新,出现了一条构建记录,点击查看日志,可以看到右侧的构建日志内容

3.构建日志内容说明

1.可以观察到,图中框选Step 1/6至Step 6/6 都是Dockerfile的文件内容,表示正在执行Dockerfile文件语句。

2.第49行:表示docker build成功。

3.第52行:构建成业务镜像的地址是,ccr.ccs.tencentyun.com/liangfeng/test:test-nginx-201908051618-d852fb93feb0e32c386f4facb8550a3e1e679066

4.第67行:Build successfully,表示构建成功。

至此nginx wordpress业务镜像构建成功,同理,php wordpress镜像构建也可以参照如上步骤。

4.构建验证

点击镜像版本,可以看到刚刚构建成功的业务镜像。

nginx wordpress业务镜像地址是:ccr.ccs.tencentyun.com/liangfeng/test:test-nginx-201908051618-d852fb93feb0e32c386f4facb8550a3e1e679066

php wordpress业务镜像地址是:ccr.ccs.tencentyun.com/liangfeng/test:test-php-201908051634-7ec4253f2f17431d387aadecbf3d2b79a690681f

备注:php dockerfile文件内容

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • TKE操作指南 - 部署wordpress 容器服务上(十)

    根据TKE操作指南 - 自动化构建,生成Wordpress Docker业务镜像(四)我们已经知道道nginx和php wordpress业务镜像地址

    亮哥说TKE
  • 腾讯云TKE使用

    以下通过视频方式来分别介绍“搭建wordPress”、“腾讯云TKE容器创建Nginx”和“手工搭建Hello world 服务”,因为很多细节不能整理入博客建...

    研究僧
  • 在腾讯云容器服务 TKE 中实践 DevOps

    jokey,腾讯云容器产品工程师,热衷于云原生领域。目前主要负责腾讯云TKE 的售中、售后的技术支持,根据客户需求输出合理技术方案与最佳实践。 概述 DevO...

    腾讯云原生
  • TKE操作笔记01

    腾讯云容器服务(Tencent Kubernetes Engine,TKE)是高度可扩展的高性能容器管理服务,您可以在托管的云服务器实例集群上轻松运行应用程序。...

    聂伟星
  • Docker最全教程——从理论到实战(六)

    托管到腾讯云容器服务,我们的公众号“magiccodes”已经发布了相关的录屏教程,大家可以结合本篇教程一起查阅。

    心莱科技雪雁
  • 4月容器产品技术月报|五一快乐,留言有礼

    ‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍ ? 2021年4月 ? ? VOL:12 ? ?...

    腾讯云原生
  • 中秋福利 | 15个系列100+篇超实用云原生原创干货合集(内含腾讯彩蛋)

    还有2天,就要迎来中秋小长假啦 这个中秋节你打算怎么过? ? 小云选择把这篇干货全部拿下! 云原生技术干货文章合集,来咯~ ? 2021 年,要说咱们技术圈...

    腾讯云原生
  • TKE操作指南 - TKE产品介绍(一)

    腾讯云容器服务(Tencent Kubernetes Engine,TKE)是高度可扩展的高性能容器管理服务,您可以在托管的云服务器实例集群上轻松运行应用程序。...

    亮哥说TKE
  • 《TKE学习》TKE简介(一)

    腾讯云容器服务(Tencent Kubernetes Engine,TKE)是高度可扩展的高性能容器管理服务,您可以在托管的云服务器实例集群上轻松运行应用程序。...

    baron
  • TKE镜像仓库使用

    如果您不需要自动化构建的过程,目前就可以使用了,您只需要将您的镜像,打一个tag ,然后login、push到该命名空间下即可!

    蒋经纬
  • 9月容器产品技术月报 | 腾讯云原生专题上线啦

    ? 2020年9月 ? ? VOL:05 ? ? ? ? 容器产品新特性 9月上新 ? ? 腾讯云边缘服务TKE Edge 从中心云管理边缘云资源的容器系统 ...

    腾讯云原生
  • TKE镜像仓库的正确打开姿势

    镜像仓库用于存放 Docker 镜像,Docker 镜像用于部署容器服务,每个镜像有特定的唯一标识(镜像的 Registry 地址+镜像名称+镜像 Tag),目...

    keepyan
  • 使用腾讯云容器服务(TKE)实现应用跨可用区高可用部署之一

    本文描述如何使用腾讯云容器服务(TKE)实现跨可用区的应用高可用部署,包含如下内容:

    杨泽华
  • TKE操作笔记02

    本次笔记主要讲述了如何在腾讯云控制台创建并使用你的第一个kubernetes集群,创建过程中每个步骤的区别以及如何选择,保证自己的集群资源达到最优。

    聂伟星
  • 小白也能玩转Kubernetes 你与大神只差这几步

    6月30日,腾讯云联合InfoQ举办的云+社区技术沙龙,以Kubernetes 上云一键部署、云上大规模计算平台构建、CIS底层技术实现、Tencent Hub...

    云加社区技术沙龙
  • 3月容器产品技术月报|留言抢定制款T恤

    ? 2021年3月 ? ? VOL:11 ? ? ? ? 腾小云告诉你最前线的产品新特性, 总有一款让你心动~ ? 云说新品 ? 容器产品新特性 3月上新 ?...

    腾讯云原生
  • 当TKE遇上Coding, 业务如何实现快速迭

    在互联网行业敏捷开发,DevOps 理念被越来越多的企业采纳, 敏捷开发和DevOps 本质上都是一种协作文化, 都是着眼于打破壁垒, 增加成员共同责任感。De...

    朱瑞卿
  • 基于腾讯云TKE的大规模强化学习实践

    | 导语 大规模的强化学习需要海量的异构计算资源,批量快速启停训练任务,高频更新模型参数,跨机跨进程共享模型数据等。传统的手工管理模式操作繁琐,面临诸多不确定性...

    腾讯云原生
  • 冲上云霄-云从业随笔(3)

    上两篇讲述了笔者这两年内心的一些想法,也将写了两篇落地文档,若是仅仅构造一个远程开发环境的话,其实就背离了我写这系列文章的初衷,更希望在当前云环境下,Pro能够...

    StatLee

扫码关注云+社区

领取腾讯云代金券