设为首页 收藏本站
查看: 1152|回复: 0

[经验分享] 持续集成环境(Gitlab+jenkins+shell)

[复制链接]

尚未签到

发表于 2017-6-2 11:06:24 | 显示全部楼层 |阅读模式
  一、搭建gitlab
  ps:不是这方面的专家,主要还是一键式安装为主。
  1、进入官网:https://about.gitlab.com/gitlab-com/
  2、选择自己的操作系统:我这边选择的ubuntu 14
  3、根据提示的方式进行安装(不过一般都安装不成功,主要是墙的太厉害了)
  -------------------------------------------------------
  所以我自己选择自载deb包,利用dpkg -i命令进行安装
  1、可以先根据官方提示安装依赖包,一般是 openssh-server postifx等,前者是ssh授权登录使用,后者是gitlab默认的邮件传输软件
  2、下载deb包(centos/red hat系列的是另外一个rpm的),拷贝到/tmp目录下
  (如果网络可以连接下载的话,可以到https://packages.gitlab.com/gitlab/gitlab-ce下载,我是使用了一个阿里云香港的服务器先下载到服务器,再用本地的VPN下载,这样速度也才100kb左右,不过没办法,不用这个的话才最多十几kb的下载速度)
  ----------------
  百度云盘分享:



deb(Debian系列的linux,如ubuntu):
地址:http://pan.baidu.com/s/1dELDoEd
提取密码:j3rc
rpm(redhat系列,如centos)
链接: http://pan.baidu.com/s/1c1aQYy
密码: yma9
  3、执行解压安装



dpkg -i /tmp/gitlab-ce_8.3.2-ce.0_amd64.deb
# rpm
# rpm -i /tmp/gitlab-ce_8.3.2-ce.0_amd64.rpm
  4、安装好之后,根据提示执行



gitlab-ctl reconfigure
  5、修改http访问的启动端口,gitlab默认使用的nginx



vim /var/opt/gitlab/nginx/conf/gitlab-http.conf
  将类似于下面的端口80改成自定义的端口,如:8080



server {
listen *:80;
  6、重启gitlab



gitlab-ctl restart
  7、访问域名地址和端口(前面修改的8080),如:http://gitlab.gabin.top:8080
  默认的账号是:root  
  密码:5iveL!fe
  新版本好像会直接让你重设密码,账号也是root。
  二、安装jenkins
  1、进入官网:https://jenkins.io/index.html
  2、选择自己适合的系统安装
  3、可以选择按照页面上方的命令提示进行安装,也可以选择下载下方的deb包上传到服务器上利用dpkg -i的命令进行解压安装  



# 添加仓库到apt软件管理
wget -q -O - http://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
echo deb http://pkg.jenkins.io/debian-stable binary/ >> /etc/apt/sources.list
# 更新apt
sudo apt-get update
# 安装jenkins
sudo apt-get install jenkins
# 下面是使用dpkg 安装deb包的方法
# dpkg -i gitlba-ce.deb
  4、修改jenkins端口



vim /etc/init.d/jenkins
# centos的目录可能不一样,使用sudo find / -name 'jenkins'找一下即可
  找到:HTTP_PORT改成自己需要的端口
  5、重启jenkins



service jenkins restart
  6、访问jenkins,并安装所需的插件(Maven、Gitlab Hook、git),这些大家自己研究一下,不难。
  三、在gitlab中创建一个git项目
  1、通过web系统进行操作
  2、编辑项目,进入项目页,在右上角点击编辑按钮(不同版本可能界面会有不同)
  3、选择web hooks进行配置,其实就是增加一个推送地址,每当项目提交的时候就往这个地址推送数据,这边的url地址需要填写jenkins项目中的地址
  四,配置jenkins job
  1、新建一个job(如果已经成功安装maven插件,则会出现maven项目的选择)
  2、配置项目源代码管理
  注意这边需要配置一个授权账号,我这边配置的是gitlab所在服务器的ssh私钥
  3、配置构建触发器,就是开始执行源码更新->编译->测试->部署的条件,我们这边选择gitlab hook,就是gitlab的钩子,只要gitlab有提交代码或其他设置的条件,就会自动执行构建操作,标红的地址上面就有提到过,是用于gitlab中web hooks地址填写栏位的,但要注意这个地址必须是可以在gitlab服务器上访问的。
  4、配置构建成功之后部署生产环境,这边选择只在成功的情况下部署,另外使用BUILD_ID=dontKillMe来执行一个shell脚本
  (因为jenkins执行构建完成后会自动kill进程,如果部署环境还没完成,则会终端),这边的update.sh是一个生产环境下的自动部署脚本,为了保证jenkins有这个执行脚本的权限,我们可以设置/etc/default/jenkins文件中的用户改为root,这样我们就有执行ssh的相关权限了。



#JENKINS_USER=$NAME
#JENKINS_GROUP=$NAME
JENKINS_USER=root
JENKINS_GROUP=root
  5、在gitlab的项目编辑页面中选择web hooks,点击已经添加的web hooks的测试按钮,看是否能正常触发构建。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-382718-1-1.html 上篇帖子: Linux下GitLab的快速安装以及备份 下篇帖子: GitLab安装说明
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表