前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TKE操作指南 - 自动化构建,生成Wordpress Docker业务镜像(五)

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

原创
作者头像
亮哥说TKE
修改2019-08-15 11:15:03
1.1K0
修改2019-08-15 11:15:03
举报
文章被收录于专栏:TKETKE

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

持续集成与持续交付

通过持续集成与持续交付提供优秀的 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文件

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文件内容

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 进行构建之前,我们先了解持续集成和持续交付的概念。
  • 持续集成与持续交付
  • 容器部署是基于Docker业务镜像
  • 腾讯容器云的构建功能(持续集成)
  • 构建(持续集成)步骤:
  • 1.Dockerfile文件上传至gitlab
  • 2.构建配置
  • 3.构建日志内容说明
  • 4.构建验证
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档