欢迎来到天天文库
浏览记录
ID:46849744
大小:1.20 MB
页数:17页
时间:2019-11-28
《1-吴海鹏-Docker在持续集成服务中的实践》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、1DockerInDaoCloudCI/CD基于docker构建CI/CD服务目录CI/CDmeetsDocker1DockerinDaocloudCI/CD23EffectiveDockerPart1MetricsinCI/CDCI(ContinuousIntegration)编码—>开发完成CD(ContinuousDelivery)开发完成—>上线发布衡量一个CI系统最重要的因素自动化程度如何?时间(环境准备,测试运行)够快?衡量一个CD系统最重要的因素能够实现快速并且可重复的发布?Part1TriditionalCI/
2、CD&ProblemsCI的现状手动测试—>jenkins—>jenkins+虚拟化CD的现状手动运维部署—>开发自己部署工具或者发布平台Problems如何做到完全的自动化干净隔离的测试环境vs尽可能少的测试准备时间如何解决‘可是,为什么它在我的环境中跑的OK呢?’Part1HowdockerhelpsCI/CD1.如何做到完全的自动化1.docker是一个很好1.自动化程度的sandbox方案2.干净隔离的测试环境vs尽可能少的测试2.测试准备时间2.dockerimage定义准备时间了测试和软件的交付3.快速可重复的发布
3、标准3.’为什么它在我的环境中跑的OK呢?’metricsdockerproblemsPart2HowDaoCloudCI/CDworksDaoCloud提供的ci/cd服务完全基于docker通过在源代码中配置文件daocloud.yml,即可享用完全自动化的持续集成服务codecommit->DaoCloudCI->notification通过在源代码中配置文件Dockerfile,即可享用完全自动化的交付和部署服务tagcommit->DaoCloudCD->imagebuild->deployPart2sourceco
4、dePart2daocloud.ymlPart2CIbuildlistPart2sourcecodestatusPart2CDbuildlistPart2DaoCloudArchitectCI/CDImageStoreAppRuntimeDockerDockerimage-app01Docker-app01.comBuildDeployDockerDockerimage-app02Docker-app02.comDockerDockerimage-app03Docker-app03.comPart3CI/CDComponets
5、Controller:接受portal的api调用,CI/CD的控制器Scheduler:调度器,负责buildjob队列的调度Builder:执行buildjob,使用docker作为sandboxHook:接受github/bitbucket的webhook调用,用户对源代码的改动会触发github/bitbucket的webhookNotification:负责job完成之后的通知,email,githubstatus设置Part2CI/CDArchitectDaoCloudPortalGithubSchedulerHo
6、okBuilderControllerDockerNotificationDockerPart3EffectiveDocker如果你需要一个轻量级的sandbox方案,请首先考虑docker如果你的项目花费不少人力在你的测试环境和生产环境中部署开源软件,请考虑使用docker,获取直接部署好的dockerimage谨慎使用dockerindocker,network和volume的复杂性会急剧增加提供多租户服务的场景中,同样谨慎使用docker,docker在资源隔离方面做的并不完使用DaoCloud的docker加速器,它将
7、大幅加速您访问dockerhub的速度ThankYou!HaipengWu
此文档下载收益归作者所有