美文网首页
Centos7.5 gitlab-ce-10.7.3 +jenk

Centos7.5 gitlab-ce-10.7.3 +jenk

作者: My_Dream2017 | 来源:发表于2018-05-22 08:47 被阅读0次

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

    Gitlab+jenkins使用场景

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

    一、环境准备

    1、操作系统

    
    [root@jenkins tmp]# cat /etc/redhat-release
    
    CentOS Linux release 7.5.1804 (Core)
    
    [root@jenkins tmp]# uname -a
    
    Linux jenkins 3.10.0-862.2.3.el7.x86_64 #1 SMP Wed May 9 18:05:47 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
    
    

    安装所需软件

    [root@jenkins src]#yum install patch  git wget -y
    

    gitlab版本:gitlab-ce-10.7.3-ce.0.el7.x86_64.rpm
    jenkins版本:jenkins-2.122-1.1.noarch.rpm

    二、安装 Gitlab

    1.下载镜像:

    清华镜像站
    Gtilab官方网站

    
    [root@jenkins src]#wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.7.3-ce.0.el7.x86_64.rpm
    
    

    2.安装Gitlab

    [root@jenkins src]#yum localinstall gitlab-ce-10.7.3-ce.0.el7.x86_64.rpm
    [root@jenkins src]#yum install postfix
    [root@jenkins src]#systemctl enable postfix
    [root@jenkins src]#systemctl start postfix
    

    3.修改配置文件gitlab.rb

    GitLab默认会占用8080809090端口,Jenkins默认也会使用8080端口,所以,这一步操作将会修改GitLab的默认端口为8180819091,如果你还是希望使用默认端口的话,可以跳过这一步。
    1.将 external_url 'http://127.0.0.1' 改为 external_url 'http://<你的服务器地址或域名>:81'
    2.将 # unicorn['port'] = 8080 改为 unicorn['port'] = 8081
    3.将 #prometheus['listen_address'] = 'localhost:9090' 改为 prometheus['listen_address'] = 'localhost:9091'
    配置文件如下:

    [root@jenkins ~]# egrep -v "^#|^$" /etc/gitlab/gitlab.rb
    external_url 'http://172.20.42.209:81'
    unicorn['port'] = 8081
    prometheus['listen_address'] = 'localhost:9091'
    

    4.生效配置文件及启动Gitlab

    使用reconfigure命令重新配置

    [root@jenkins ~]#gitlab-ctl reconfigure
    

    其他说明:
    平时可使用如下命令关闭或启动gitlab

    [root@jenkins ~]#gitlab-ctl start
    [root@jenkins ~]#gitlab-ctl stop
    

    GitLab安装完毕。

    三、汉化Gitlab

    停止gitlab

    [root@jenkins ~]#gitlab-ctl stop
    

    一、下载汉化包

    查看版本

    [root@jenkins src]# cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
    10.7.3
    

    下载gitlab版本对应的汉化包:gitlab中文社区

    [root@jenkins src]# git clone https://gitlab.com/xhang/gitlab.git -b v10.7.3-zh
    [root@jenkins src]# ll -h
    总用量 389M
    drwxr-xr-x 29 root root 4.0K 5月  21 21:26 gitlab
    -rw-r--r--  1 root root 389M 5月   4 04:19 gitlab-ce-10.7.3-ce.0.el7.x86_64.rpm
    [root@jenkins src]#cd gitlab
    [root@jenkins gitlab]# cat VERSION
    10.7.3
    

    Git使用方法见廖雪峰Git教程

    二、更新汉化补丁

    导出patch用的diff文件(patch使用方法

    [root@jenkins gitlab]#git diff v10.7.3 v10.7.3-zh > /tmp/v10.7.3-zh.diff
    

    备份源文件:

    [root@jenkins gitlab]#cp /opt/gitlab/embedded/service/gitlab-rails /opt/gitlab/embedded/service/gitlab-rails.bak.$(date +%F)
    

    打汉化补丁:

    [root@jenkins gitlab]#patch -d /opt/gitlab/embedded/service/gitlab-rails/ -p1 < /tmp/v10.7.3-zh.diff
    

    更新gitlab配置

    [root@jenkins ~]#gitlab-ctl reconfigure
    

    启动Gitlab

    [root@jenkins gitlab]# gitlab-ctl start
    ok: run: gitaly: (pid 24620) 1s
    ok: run: gitlab-monitor: (pid 24631) 0s
    ok: run: gitlab-workhorse: (pid 24642) 1s
    ok: run: logrotate: (pid 24650) 0s
    ok: run: nginx: (pid 24657) 1s
    ok: run: node-exporter: (pid 24663) 0s
    ok: run: postgres-exporter: (pid 24668) 0s
    ok: run: postgresql: (pid 24675) 1s
    ok: run: prometheus: (pid 24605) 10s
    ok: run: redis: (pid 24758) 0s
    ok: run: redis-exporter: (pid 24762) 1s
    ok: run: sidekiq: (pid 24767) 0s
    ok: run: unicorn: (pid 24774) 1s
    
    [root@jenkins gitlab]# netstat -antlp | grep LISTEN
    tcp        0      0 0.0.0.0:8060            0.0.0.0:*               LISTEN      25629/nginx: master
    tcp        0      0 127.0.0.1:9121          0.0.0.0:*               LISTEN      25740/redis_exporte
    tcp        0      0 127.0.0.1:9091          0.0.0.0:*               LISTEN      25727/prometheus
    tcp        0      0 127.0.0.1:9187          0.0.0.0:*               LISTEN      25677/postgres_expo
    tcp        0      0 127.0.0.1:9100          0.0.0.0:*               LISTEN      25635/node_exporter
    tcp        0      0 127.0.0.1:9229          0.0.0.0:*               LISTEN      25614/gitlab-workho
    tcp        0      0 127.0.0.1:9168          0.0.0.0:*               LISTEN      25602/ruby
    tcp        0      0 127.0.0.1:8081          0.0.0.0:*               LISTEN      25771/unicorn maste
    tcp        0      0 0.0.0.0:81              0.0.0.0:*               LISTEN      25629/nginx: master
    tcp        0      0 127.0.0.1:8082          0.0.0.0:*               LISTEN      25745/sidekiq 5.0.5
    tcp        0      0 127.0.0.1:9236          0.0.0.0:*               LISTEN      25591/gitaly
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1046/sshd
    tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1408/master
    tcp6       0      0 ::1:9168                :::*                    LISTEN      25602/ruby
    tcp6       0      0 :::8080                 :::*                    LISTEN      28285/java
    tcp6       0      0 :::22                   :::*                    LISTEN      1046/sshd
    tcp6       0      0 ::1:25                  :::*                    LISTEN      1408/master
    

    四、访问gitlab

    浏览器访问gitlab所在的ip:81
    首次会要求设置root用户的密码


    Gitlab页面

    修改后就可以登录系统了


    gitlab首页

    五、安装及配置 jenkins

    1、安装JDK

    [root@jenkins src]# yum install java-1.8.0 java-devel-1.8.0
    [root@jenkins src]# java -version
    openjdk version "1.8.0_171"
    OpenJDK Runtime Environment (build 1.8.0_171-b10)
    OpenJDK 64-Bit Server VM (build 25.171-b10, mixed mode)
    

    2、安装jenkins

    参考jenkins官方文档

    [root@jenkins src]#sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
    [root@jenkins src]#sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
    [root@jenkins src]# yum install jenkins -y
    

    3、配置jenkins

    启动jenkins

    [root@jenkins src]# systemctl start jenkins
    [root@jenkins src]# systemctl enable jenkins
    [root@jenkins src]#[root@jenkins src]# netstat -antlp | grep java
    tcp6       0      0 :::8080                 :::*                    LISTEN      28285/java
    tcp6       0      0 172.20.42.209:8080      10.10.0.6:57868         ESTABLISHED 28285/java
    

    在浏览器打开 http://172.20.42.209:8080 访问jenkins


    解锁jenkins

    首次访问需要解锁jenkins,把/var/lib/jenkins/secrets/initialAdminPassword文件内容复制到administrator password下方即可。

    [root@jenkins src]# cat /var/lib/jenkins/secrets/initialAdminPassword
    xxxxxxxxxxxxxxxxxxxxxxxxxx
    

    接着会提示安装插件,可以选择建议插件,也可以选择自定义要安装插件,进入jenkins后也可以进行插件安装的。这里可以先默认:


    安装插件

    安装完成后进入主页


    主页

    4、安装git、gitlab插件

    用浏览器打开Jenkins,点击“系统设置”-->“管理插件”。

    安装gitlab插件01
    安装以下插件:
    Gitlab Plugin
    安装之后才可以在系统配置中指定gitlab的IP地址
    Git Plugin
    Git Client Plugin
    用于jenkins在gitlab中拉取源码
    Publish Over SSH
    用于通过ssh部署应用
    Maven Integration plugin
    用于新建maven项目 安装gitlab插件02

    勾选安装完成后重启jenkins 重启Jenkins生效


    安装gitlab插件03

    参考

    1.https://blog.csdn.net/xiegh2014/article/details/78802591
    2.https://blog.csdn.net/chenhaifeng2016/article/details/78603216
    3.https://blog.csdn.net/xiegh2014/article/details/78803342
    4.https://blog.csdn.net/Linjingke32/article/details/77799878
    5.https://www.jianshu.com/p/q81RER

    相关文章

      网友评论

          本文标题:Centos7.5 gitlab-ce-10.7.3 +jenk

          本文链接:https://www.haomeiwen.com/subject/ahyqjftx.html