基于jenkins+kubernets+docker的持续化集成

项目实现效果,开发人员在gitlab上传代码,一键部署下去,全部web容器统一更新代码,git

服务器数量:两台jenkins作高可用,十八台服务器作docker容器的web服务器。web

架构运行思路:gitlab上更新了代码之后,经过webhook检测到gitlab上有变更,而后将给本机的jenkins传送一个回执,执行任务,任务内容是进行代码pull到本机中而后经过脚本命令把代码转移到本机的nfs目录中,而后经过jenkins上的nfs挂载到全部web容器的宿主机上,并将宿主机的挂载目录映射到容器里面的网页根目录中实现了一键自动部署环境。docker

架构生存时间:jenkins作了高可用实现了不间断工做,docker使用脚本形成了容器自启的效果。服务器

架构图:架构

顺序: 发开人员→gitlab→jenkins→registry→kubernetes→dockergitlab

思路:从开发人员上传代码到gitlab托管代码之后,jenkins自动pull下来而后作成镜像上传至registry私有仓库,同时发指令给kubernetes使他关闭旧容器,而后从新启用新的docker镜像并作成容器对外提供服务。具体操做步骤详见本人有道云笔记:3d

1.jenkins部署开发

http://note.youdao.com/noteshare?id=a3c643c5c07c35f7ad00d39ea6e0940c&sub=86FEF5261F92480D94462D90BB306919部署

2. jenkins服务安装详解get

http://note.youdao.com/noteshare?id=3f2998ef0099a0d35fc5942fc0acb6bb&sub=EFC2E4BC50D0452A822A8E3459A07F5C

3.jenkins-keepalived

http://note.youdao.com/noteshare?id=1f38bfbcb85a9bd2a216174fa19afcb4&sub=413FD3408B32428AA3CA9535EDF2FC4F

4.web端-docker容器

http://note.youdao.com/noteshare?id=6e029d91716c1c1b581c1fb0854936db&sub=663A2B77DFFE4F0CBDED17E8893D68F2

6.kubernets集群安装

http://note.youdao.com/noteshare?id=945e7fd37c2953a3dacaab0452bd522f&sub=E1A200E23E7348C6A2E7DDF6A189BB67

7.总体架构部署

http://note.youdao.com/noteshare?id=9fbb1e70069c5a36d98bad49ab235e7a&sub=D2605154F6A64B4F981C136E70BF5322

相关文章
相关标签/搜索