因为须要用到docker打包镜像,jenkins宿主机上须要安装docker,原先的jenkins server安装在centos6上没法运行docker,因此这里单独用一台centos7安装一个jenkins server。java
jenkins的安装方法有多种:docker
一、下载jar包,直接经过java运行。vim
二、用tomcat做为容器运行。centos
三、经过yum安装。tomcat
四、经过docker运行。bash
安装过程都很简单,这里就不详细说明了。ui
一、安装插件。打开jenkins页面,安装CloudBees Docker Build and Publish plugin和Publish Over SSH Plugin插件。centos7
二、新建一个项目。spa
三、配置项目。插件
四、填写项目名称。jenkins的工做空间与这里的项目名称对应,默认在/var/lib/jenkins/workspace下。
五、拉取代码。填写项目地址和须要拉取的分支,这里用了一个Additional Behabiours,拉取代码会自动建立一个目录并将代码放在该目录下。
六、build镜像,并将镜像push到harbor镜像库。填写相应的docker、dockerfile以及镜像库地址信息。
这里须要设置docker启动参数。
#vim /etc/sysconfig/docker OPTIONS='--insecure-registry 172.60.0.107 -H 0.0.0.0:2375 -H unix:///var/run/docker.sock' #systemctl restart docker |
七、经过脚本发布到k8s。这里须要设置SSH互信(具体过程略..)。
八、在k8s master上编写发布脚本。
#vim stg-che001-56-waybill.sh #!/bin/bash #update the version number sed -ri "s@(image.*v).*@\1${BUILD_NUMBER}@" /root/che001-56-stg/che001-56-waybill.yaml #Apply the configuration change kubectl delete -f /root/che001-56-stg/che001-56-waybill.yaml && kubectl create -f /root/che001-56-stg/che001-56-waybill.yaml |
九、配置完成后,点击当即构建。
十、点击Console Output能够查看构建日志。若是最后提示SUCCESS,则表示构建成功。(这里日志太长,只截取了一半)