[发明专利]基于应用容器引擎的代码处理方法、设备及存储介质有效
申请号: | 201810118223.6 | 申请日: | 2018-02-06 |
公开(公告)号: | CN108196915B | 公开(公告)日: | 2022-08-23 |
发明(设计)人: | 杨佳朋;冯常健;尧飘海;陈谔 | 申请(专利权)人: | 杭州朗和科技有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京市中伦律师事务所 11410 | 代理人: | 孔令娟 |
地址: | 310052 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 应用 容器 引擎 代码 处理 方法 设备 存储 介质 | ||
本发明提供一种基于应用容器引擎(Docker)的代码处理方法、设备及计算机存储介质,该方法包括:接收针对代码托管仓库的回调请求,所述回调请求用于表征所述代码托管仓库中有已提交用户代码的事件;响应于所述回调请求,生成用于指示已提交用户代码的事件的通知消息;根据所述通知消息从代码托管仓库中提取所述用户代码;以及对所述用户代码进行Docker镜像构建。
技术领域
本发明涉及持续集成/持续部署(Continuous Integration/ContinuousIntegration,CI/CD)技术,尤其涉及一种基于应用容器引擎(Docker)的代码处理方法、设备及计算机存储介质。
背景技术
为保证产品的质量及稳定性,持续集成/持续部署(CI/CD)作为互联网产品开发/发布的主流标准,在微服务架构下如何为部署在Docker容器中的服务进行高效的CI/CD也就显得愈发的重要。
当前实现CI/CD主要采用如下两种方式:
方式一,通过Travis CI等工具进行代码的构建并推送至二进制包管理仓库,然后手工将可运行包部署至Docker容器内部;
方式二,通过Jenkins等工具服务进行代码的构建与镜像推送,并通过编写Jenkins file等自动化脚本来进行服务的部署运行。
由此可见,当前实现CI/CD所采用的方式存在如下明显的缺陷:一方面,方式一需要用户手工拷贝构建完的二进制包到容器中并部署,这样不仅非常的耗时耗力,在代码迭代更新速度较快时,甚至可能出现部署速度跟不上代码更新速度的情况。在构建需求量很大的时候,构建服务的可扩展性依赖于Travis CI等工具自身的扩展性。另一方面,方式二只适合在 CI/CD的数量不大的私有云环境中,并不太适用于作为公有云服务对外提供服务,用户体验差。
发明内容
为了至少解决现有技术中存在的以上问题之一,本发明实施例提供一种基于Docker的代码处理方法、设备及计算机存储介质。
根据本公开的第一方面,提供一种基于Docker的代码处理方法,该方法包括:接收针对代码托管仓库的回调请求,所述回调请求用于表征所述代码托管仓库中有已提交用户代码的事件;响应于所述回调请求,生成用于指示已提交用户代码的事件的通知消息;根据所述通知消息从代码托管仓库中提取所述用户代码;以及对所述用户代码进行Docker镜像构建。
根据本公开的一个实施方式,该方法进一步包括:通过调用表述性状态转移设计标准的应用程序接口(Restful API)的方式来对所述用户代码进行Docker镜像构建。
根据本公开的一个实施方式,对所述用户代码进行Docker镜像构建包括:检测是否已构建有对应于所述用户代码的Dockerfile;若已构建,则确定所述用户代码属于更新代码;根据构建的Dockerfile对所述用户代码进行Docker镜像构建。
根据本公开的一个实施方式,对所述用户代码进行Docker镜像构建包括:检测是否已构建有对应于所述用户代码的Dockerfile;若未构建,则确定所述用户代码属于新建代码;基于构建内容进行Dockerfile的构建;以及根据构建的Dockerfile对所述用户代码进行Docker镜像构建。
根据本公开的一个实施方式,所述方法还包括:检测所述用户代码的类型是否满足所述构建的Dockerfile对应的代码类型;若满足,则对所述用户代码进行编译;若编译成功,则进一步根据构建的Dockerfile对所述用户代码进行Docker镜像构建。
根据本公开的一个实施方式,所述方法还包括:保存构建的Docker 镜像。
根据本公开的一个实施方式,所述方法还包括:根据所述用户代码提交的时间戳生成对应的版本号;或者,根据用户自定义的数字序列生成对应的版本号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州朗和科技有限公司,未经杭州朗和科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810118223.6/2.html,转载请声明来源钻瓜专利网。