Bootstrap

搭建GitLab+Jenkins持续集成环境图文教程

GitLab是一个代码仓库,用来管理代码。Jenkins是一个自动化服务器,可以运行各种自动化构建、测试或部署任务。所以这两者结合起来,就可以实现开发者提交代码到GitLab,Jenkins以一定频率自动运行测试、构建和部署的任务,帮组开发团队更高效的集成和发布代码。

这里写图片描述

下面是我最近安装GitLab+Jenkins环境的一个过程,记录下来,以备日后参考。

另外,这篇文章虽然很长,讲得很琐碎,但是仍有未能描述清楚的地方,如果按照这篇文章未能搭建成功,请耐心分析,也可从官方文档 找找灵感,继续下去总会成功的。

环境

本文将在单机上搭建一个GitLab+Jenkins环境,两者分别使用不同的端口,操作系统是ubuntu 16,其它系统可去官网找教程。

安装GitLab

这里参照官网安装教程,命令和官网是一样的,不过有些地方有特殊说明,所以,可以直接参照本小节来安装。

1、安装GitLab依赖

sudo apt-get install curl openssh-server ca-certificates postfix

注意,在安装postfix的时候,选择“internet site”:

这里写图片描述

然后,“system mail name”填写你的服务器的IP地址(下面这张图只是):

这里写图片描述

为什么要填IP地址呢?
这是因为,如果自己手上没有已注册的域名的话,随便填写一个域名是解析不了的。而这里填写的域名对GitLab影响很大,比如我这里随便填为“qsjn.com”,那我在GitLab中创建的项目默认就会使用“[email protected]”这样的地址,这就会带来不必要的麻烦。但是,如果你真的有注册域名的话,还是建议填写你的注册域名。

2、下载和安装GitLab

curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
sudo apt-get install gitlab-ee

3、配置GitLab

GitLab默认会占用8080809090端口,很不巧,Jenkins默认也会使用8080端口,所以,这一步操作将会修改GitLab的默认端口为110001100111002,如果你还是希望使用默认端口的话,可以跳过这一步。

sudo vi /etc/gitlab/gitlab.rb

(1)将

external_url 'http://127.0.0.1'

修改为:

external_url 'http://<你的服务器地址或域名>:11000'

(2)将

  # unicorn['port'] = 8080

修改为:

  unicorn['port'] = 11001

(3)将

#prometheus['listen_address'] = 'localhost:9090'

修改为:

prometheus['listen_address'] = 'localhost:11002'

4、生效配置和启动GitLab

因为我们修改了配置,所以使用reconfigure命令重新配置

sudo gitlab-ctl reconfigure

另外说明一下,平时未修改配置的话,可以使用:

;