方法/步骤
安装jenkins
参照官网wiki,如下图:
安装后的jenkin在/var/lib/jenkins启动关闭jenkins:
sudo /etc/initd/jenkins startsudo /etc/initd/jenkins stop
Jenkins安装完毕后,可以通过浏览器,例如19216816183:8080,此处IP地址为Jenkins所在机器的IP地址。
配置jenkins
Jenkins安装好之后,需要为其安装gitlab插件:在主面板上点击Manage Jenkins -> Manage Plugins,选择安装Gitlab Plugin和Gitlab Hook Plugin。
搭建gitlab源码服务器
参照官网wiki,如下图:
安装完之后默认是只能本机通过localhost访问的,修改/etc/gitlab/gitlabrb中的对应配置项如下:external_url ‘>
配置SSH key
由于jenkins需要从gitlab上拉取代码,通过ssh方式。所以需要在jenkins机器上安装git,并且将jenkins机器上生成的ssh密钥的公钥(id_rsapub中的内容)添加到gitlab的ssh keys中:
在jenkins安装机器上安装git
sudo apt-get install git
配置username和Email,生成ssh密钥
git config –global username “your name”git config –global useremail “your email”ssh-keygen -t rsa -C “10010@gmailcom”
拷贝公钥内容填到gitlab服务器
配置GitLab connections连接到gitlab拉取代码使用,配置证书,使用gitlab api token。token从gitlab中获取,在个人设置中有Access Token一栏,创建一个token,填入jenkins的系统管理 -> 系统设置 -> gitlab配置中。
Test Connection,显示success则表示配置成功。
测试集成环境
新建一个项目,源码管理选git,填入对应的仓库URL,配置 Credentials,这里可以选择用ssh username with private key(其他的我也没试成功过。。),输入用户名和对应的私钥即可
接下来构建触发器选择Build when a change is pushed to GitLab GitLab CI Service URL: …
添加hook
由于我们的jenkins任务由webhook事件来通知,所以需要将上面的CIservice URL添加到gitlab对应项目的Integrations配置中。
RUN
配置完之后apply,保存。jenkins任务就新建完成了此时我们在本地push代码到gitlab服务器,可以看到:成功地触发一次jenkins构建,效果如下:
至此jenkins+gitlab持续集成环境搭建完成!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)