当前位置:网站首页 > 微服务架构 > 正文

gitee搭建服务器(git服务器搭建 centos)



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

devops 基于tag进行构建_git

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

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

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

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

1、安装GitLab依赖

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

devops 基于tag进行构建_devops 基于tag进行构建_02

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

devops 基于tag进行构建_Jenkins_03

2、下载和安装GitLab

3、配置GitLab

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

(1)将

修改为:

(2)将

修改为:

(3)将

修改为:

4、生效配置和启动GitLab

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

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

来启动和关闭GitLab.

至此,GitLab安装完毕

1、打开,登录进去(详见下面),点击创建一个项目组,信息可以自己看着填,没有关系

devops 基于tag进行构建_Jenkins_04

2、接着在项目组里面创建一个项目,项目的信息自己看着填,没有关系

devops 基于tag进行构建_devops 基于tag进行构建_05

3、新建的项目都会有操作提示,如果对git不熟悉的话,建议简单记一下,特别是global setting , 本文后面会用到:

devops 基于tag进行构建_devops 基于tag进行构建_06

本节参考了官方安装教程,但会修改默认端口

或者也可使用官方的下载地址,不过可能会慢一点:

2、运行Jenkins

这里将jenkins的端口修改成12000,并且使用后台模式运行

至此,Jenkins安装成功,可以用浏览器打开访问,然后按照jenkins的提示一步步走就可以了。

用浏览器打开Jenkins,点击“系统设置”

devops 基于tag进行构建_devops 基于tag进行构建_07

点击“插件管理”

devops 基于tag进行构建_Jenkins_08

切换到“可选插件”,分别搜索“GitLab Plugin”和“Git Plugin”,然后点击“直接安装”。如果在“可选插件”里没有搜到,可能默认你已经安装了,可以在“已安装”里查看

devops 基于tag进行构建_devops 基于tag进行构建_09

安装完会显示:

devops 基于tag进行构建_服务器_10

打开GitLab,点击“setting”——“Account”,复制“Private token”备用,如下所示:

devops 基于tag进行构建_git_11

打开Jenkins,点击“系统管理”——“系统设置”,如下所示:

devops 基于tag进行构建_服务器_12

点击“配置”下拉框,点击“Gitlab”选项,如下所示:

devops 基于tag进行构建_服务器_13

配置GitLab,”Connection Name”随便填,“Git Host URL”填GitLab的访问地址,然后点“Add”——“jenkins”,如下所示:

devops 基于tag进行构建_git_14

在弹出框里,“kind”选择“GitLab API Token”,将先前复制的“Private token”粘贴到“API token”输入框中,然后点击“Add”,如下所示:

devops 基于tag进行构建_Jenkins_15

选择刚刚新建的“Credentials”,如下所示:

devops 基于tag进行构建_服务器_16

设置完了,要测试一下能否连接成功,点击“test connection”,要看到返回“Success”才行,如下所示:

devops 基于tag进行构建_git_17

然后点击页面底下的“apply”,再点击“save”,如下所示:

devops 基于tag进行构建_devops 基于tag进行构建_18

打开Jenkins,点击“系统管理”——“系统设置”

devops 基于tag进行构建_服务器_12

点击“配置”下拉框,选择“Git plugin”选项

devops 基于tag进行构建_服务器_20

设置Git插件的全局配置,然后点击“apply”——“save”

devops 基于tag进行构建_Jenkins_21

在jenkins里,一个任务叫做一个job。一般我们的项目会有多个分支,比如开发分支和产品分支,我们可以对每一个分支都新建一个job,比如,我们对开发分支创建一个测试的job,每次有代码提交就自动运行一次测试,对产品分支创建一个打包的job,每次有代码提交就运行打包任务。

不过在这里,我们只是单纯的创建一个job,来演示jenkins自动运行任务的过程。首先,点击“创建一个新任务”

devops 基于tag进行构建_git_22

“item name”可以随便起,然后点击“构建一个自由风格的软件项目”

devops 基于tag进行构建_git_23

点击“OK”

devops 基于tag进行构建_git_24

至此,创建一个Job成功了

打开 GitLab,点击右上角的“setting”—— SSH Keys,就可以进入到添加界面,如下所示:

devops 基于tag进行构建_git_25

然后按照下面的教程生成SSH Key,并将公钥粘贴到“Key”里,name可以随便起,但最好能一看就知道是某个人或某台机器。此外,点击“generate it”链接可以看到官方的教程。

下面分别贴出在windows下和在ubuntu下生成ssh密钥的步骤,按照你实际的操作系统进行操作:

windows下生成SSH密钥的步奏

(1) 安装git

(2) 在任意文件夹—右键—点击“Git Bash Here”

(3) 在Git Bash中运行:

接下来全部按 Enter 使用默认值(当然也可以设置密码,详见下面备注),这会生成一对公钥和私钥:

devops 基于tag进行构建_devops 基于tag进行构建_26

(4) 复制公钥到粘贴板

(5) 回到添加SSH Key的界面,将公钥粘贴到其中,然后点击“add key”

ubuntu下生成SSH密钥的步奏

(1) 运行:

全部按 Enter 使用默认值(当然也可以设置密码,详见下面备注),这会生成一对公钥和私钥:

devops 基于tag进行构建_devops 基于tag进行构建_26

(2) 如果这是jenkins服务器,则记下私钥的存放路径(私钥、私钥、私钥,不是公钥,重要的事情说三遍),下一步将会用到,否则跳过这一步:

devops 基于tag进行构建_devops 基于tag进行构建_28

(3) 打开公钥文件,全选其中文字,复制到粘贴板:

(3) 回到添加SSH Key的界面,将公钥粘贴到其中,然后点击“add key”

至此,在GitLab上创建项目已经完成,你可以复制运行项目主页上的命令来同步新项目到本地。

打开jenkins,进入job页面:

devops 基于tag进行构建_devops 基于tag进行构建_29

点击“配置”:

devops 基于tag进行构建_devops 基于tag进行构建_30

下面的配置都是在这里页面

选择“源码管理”,选择“Git”,然后去GitLab中复制项目地址,粘贴到“Repository URL”,然后点击“credentials”后面的“Add”按钮

devops 基于tag进行构建_git_31

在弹出页面里面:

  • Kind 选择 SSH Username with private key
  • Username 填 root
  • PrivateKey 选择 From a file on jenkins master ,然后将服务器的 私钥的存放路径(私钥、私钥、私钥,再说三遍) 粘贴进去
  • passphrase 填创建SSH秘钥时的设置的密码,未设置可不填

然后点击“Add”

devops 基于tag进行构建_git_32

在“credentials”里选择我们刚刚创建的认证方式:

devops 基于tag进行构建_服务器_33

如果没报错,说明成功了,点击页面底部的“apply”。如果出错了,会在“Repository URL”和“Credentials”之间显示红色的错误信息。

jenkins job默认对master分支进行构建,你也可以自定义分支。这要求你的Gitlab代码仓库中要存在这个分支,一般来说,就是要向代码仓库提交一次更改,请 自行完成(Gitlab项目刚创建时是空的,一个分支也没有,这样的话,自动构建时会出错)

devops 基于tag进行构建_Jenkins_34

选择“构建触发器”,勾选“Pull SCM”,这个选项会每隔一段时间检查一下GitLab仓库中代码是否有更新,有的话就执行构建操作。日程表如何设置,在这个输入框下面有说明。

devops 基于tag进行构建_服务器_35

扩展阅读

常见构建触发器、:

  • Build after other projects are built 当另一个构建任务完成之后触发
  • Build periodically 周期性的触发
  • Build when a change is pushed to GitLab. GitLab CI Service URL: http://191.8.2.112:12000/project/test-go-dev 当代码有更新的时候触发,通过GitLab CI
  • GitHub hook trigger for GITScm polling 通过Github钩子触发
  • Poll SCM 定期检查代码有无更新,有更新时触发

这只是个人理解,具体怎么样大家可以试试,Poll SCM方式我是试过的。

在build栏目里,选择“jenkins execute shell”,然后输入你项目的构建命令(这依赖于你的项目,如Maven的maven build,gulp的gulp xxx 等等)

devops 基于tag进行构建_Jenkins_36

扩展阅读

jenkins支持多种构建脚本,可以自己试一下:

devops 基于tag进行构建_git_37

点击“添加构建后操作步骤”

devops 基于tag进行构建_服务器_38

选择“public build status to gitlab”:

devops 基于tag进行构建_git_39

点击“高级”,填写“build name”:

devops 基于tag进行构建_git_40

点击“应用”,点击“保存”。

完成之后,在gitlab提交代码触发了构建之后,gitlab界面上应该会显示构建状态图标,如下图所示:

devops 基于tag进行构建_git_41

至此,所有工作已经完成,现在你提交代码到GitLab,jenkins会每隔一段时间帮你运行一次构建命令,这样大家的代码自动集成到一起,出了错的话很快就知道了。

1、 从git上拉取的脚本的执行权限问题

每次jenkins运行任务的时候,都会到gitlab上拉取到最新的代码,放在workspace下。需要注意的是,默认拉取的脚本文件是没有执行权限的,需要在构建命令里面添加:

2、构建 shell 用不了nvm,参考

是使用nvm前,加一句:

到此这篇gitee搭建服务器(git服务器搭建 centos)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 微信apk 下载(微信apk下载二维码)2024-12-21 19:00:09
  • linux系统微信聊天记录保存多久(linux系统微信聊天记录保存多久能恢复)2024-12-21 19:00:09
  • 自建个人服务器(自建个人服务器怎么建)2024-12-21 19:00:09
  • git提交到服务器(git上传新项目到服务器)2024-12-21 19:00:09
  • 服务器需要备案么(香港服务器需要备案么)2024-12-21 19:00:09
  • 个人搭建服务器备案(个人服务器搭建服务器主机)2024-12-21 19:00:09
  • 微信linux版本(linux系统微信版本低)2024-12-21 19:00:09
  • 微信hook 下载附件(微信附件和下载的文件有什么区别)2024-12-21 19:00:09
  • 微信小程序制作(蛋糕店微信小程序制作)2024-12-21 19:00:09
  • 微信linux版本(微信有linux版)2024-12-21 19:00:09
  • 全屏图片