devops构建架构
构建过程
1)开发人员提交代码到源码仓库(gitlab),根据设定的条件自动触发jenkins构建
2)构建成功后,从存放的Docker的git仓库中获得该项目的Dockerfile,执行docker build镜像
3)将镜像推送至公司内部的私有镜像仓库
构建一个支持docker in docker的Jenkins镜像
何为docker in docker? 因为jenkins本身是以docker方式运行的,而在jenkins代码构建完成的最后一步,需要打docker镜像,因此需要在运行jenkins的docker容器内部,再运行一套docker环境,在一个docker容器内部运行docker环境,需要一些特殊的处理,否则docker deamon起不来
Jenkins项目配置
Jenkins安装相应的插件:GIT client plugin、GIT plugin、Gitlab Hook Plugin、GitLab Plugin
源码管理部分,选择Git,填写项目仓库地址和认证用证书或者用户名密码
在构建过程——execute shell上填入:
if [ -d /var/jenkins_home/docker_build ];then mkdir -p /var/jenkins_home/docker_build fi
cd /var/jenkins_home/docker_build rm -rf ${JOB_NAME##*/}
git clone http://meng:meng@172.21.1.11:2080/meng/${JOB_NAME##*/}.git cd ${JOB_NAME##*/} chmod 755 ./build.sh