淘先锋技术网

首页 1 2 3 4 5 6 7

前面我搭建了jenkins。过程比较顺利,接下来,搭建gitlab,配合webhook来完成正真的自动部署吧!

1.下载社区版的gitlab-ce,gitlab-runner具体的安装过程就略过了。

安装完成之后,修改vim /etc/gitlab/gitlab.rb 文件

修改完成后:gitlab-ctl reconfigure

启动gitlab: gitlab-ctl start

接下来 根据上面的地址 登录到你的gitlab地址,默认用户是root,密码的话有指引获取。

然后,可以新建自己的项目了。

2.首先配置公私钥对。将公钥存储在你的gitlab上。

查看公钥位置:(为了学习,我把jenkins服务器和gitlab服务器部署在自己的同一台虚拟机上面)

在gitlab上面设置好公钥:

3.来到jenkins,创建好自己的项目,然后项目配置如下:(你的插件需要装完整,如git、gitlab、webhook等插件)

在这里,我的远程仓库选择的是http的地址,凭据就要填你的服务器登录账号密码,仓库是ssh类型的话,凭据就要是私钥了,注意了是私钥。

接下来,配置好分支和检出子目录:

构建触发器这里要选择每当有push到远程仓库就触发构建这种情况:

这里有个URL:后面配置webhook的时候会用到

点开高级按钮,下面有一个生成token的按钮:(后面会在gitlab中配置webhook时候会用到)

项目配置就到这里了。

然后的话,去到jenkins的系统管理——全局安全配置,关闭你的csrf验证,由于高版本的jenkins没有了页面关闭csrf的功能,本人尝试了多种方法,最终在jenkins的命令行工具中,执行了如下命令临时关闭了csrf验证:

 hudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION = true

4.去到gitlab,选择一个项目,设置webhook,

选择好触发时间,把刚才的url和token填进来即可。

本地模拟一下日常的开发,看看效果:

文章有点简陋,主要是记录一下,方便后面回忆。