美文网首页
Gitlab搭建指南

Gitlab搭建指南

作者: 信仰年輕 | 来源:发表于2019-03-02 11:44 被阅读0次

    1.本文目标

    在centOS7系统上成功装上Gitlab

    2.准备工作

    • 需要自己搭建CentOS7系统,不管是在服务器上还是自己开虚拟机
    • 如果自己开虚拟机,这里推荐virtualbox虚拟机,然后去centOS官网下载iso镜像
    • 安装Gitlab需要至少4GB的可用内存,由于操作系统和其他正在运行的应用也会使用内存, 所以安装GitLab前一定要注意当前服务器至少有4GB的可用内存,少于4GB内存会导致在reconfigure的时候出现各种诡异的问题, 而且在使用过程中也经常会出现500错误.

    关闭防火墙

    # systemctl stop firewalld
    

    防止防火墙开机启动

    # systemctl disable firewalld
    

    用vi指令打开selinux文件并修改SELINUX=disabled

     # vi /etc/sysconfig/selinux
     ...
     SELINUX=disabled
     ...
    

    重启系统

     # reboot
    

    可以用下面的指令查看是否成功,如果显示 Disabled就成功了

    # getenforce
    

    3.Gitlab安装配置管理

    1、安装Gitlab组件

    # yum  install curl policycoreutils openssh-server openssh-clients postfix
    

    2、 配置YUM仓库

    # curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
    

    3、 启动postfix邮件服务

    # systemctl start postfix 
    # systemctl enable postfix
    

    4、安装Gitlab-ce社区版本

    # yum -y install gitlab-ce
    

    4.Omnibus Gitlab等相关配置初始化并完成安装

    1、创建本地私有秘钥

    
     # mkdir -p /etc/gitlab/ssl
     # openssl genrsa -out "/etc/gitlab/ssl/gitlab.example.com.key" 2048
    
    

    2、使用刚才的私有密钥创建CSR证书

    
     # openssl req -new -key "/etc/gitlab/ssl/gitlab.example.com.key" -out "/etc/gitlab/ssl/gitlab.example.com.csr"
    
    

    3、进入csr证书的安装项,需要填写一些信息,根据个人具体信息填写

    country 输入 cn
    province 输入 bj
    city 输入 bj
    organization name输入空格
    organization unit name输入空格
    common name输入域名 gitlab.example.com
    Email地址输入admin@example.com
    证书密码输入123456
    optional company name 直接回车
    

    上面输入的域名 gitlab.example.com,效果就是http://gitlab.example.com
    可以输入LL查看私有秘钥和csr证书否创建成功

    4、使用私有密钥和CSR证书创建CRT签署证书

    
    # openssl x509 -req -days 365 -in "/etc/gitlab/ssl/gitlab.example.com.csr" -signkey "/etc/gitlab/ssl/gitlab.example.com.key" -out "/etc/gitlab/ssl/gitlab.example.com.crt"
    
    

    5、创建pem证书

    
    # openssl dhparam -out /etc/gitlab/ssl/dhparams.pem 2048
    
    

    6、更改所有证书的权限

    # chmod 600 *
    

    7、编辑Gitlab的配置文件
    vi指令打开gitlab.rb文件并找到external_url这一行,把后面的http改成https

     vi /etc/gitlab/gitlab.rb
    
     external_url 'https://gitlab.example.com'
    

    然后输入 /redirect_http_to_https 搜索,
    找到nginx['redirect_http_to_https']改为true并且把最前面的注释打开,
    ssl_certificate, ssl_certificate_key, 按照下面的改,
    ssl_dhparam这一行,把nil替换成/etc/gitlab/ssl/dhparams.pem

    nginx['redirect_http_to_https'] = true
    
     # nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.example.com.crt"
    
     # nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.example.com.key"
    
     # nginx['ssl_dhparam'] = /etc/gitlab/ssl/dhparams.pem
    
    

    8、初始化gitlab

    # gitlab-ctl reconfigure
    

    5.Nginx SSL代理服务配置

    1、找到gitlab下面的nginx代理工具,去更改gitlab http 配置文件
    vi指令打开gitlab.rb文件

    vi /var/opt/gitlab/nginx/conf/gitlab-http.conf
    

    搜索 /server_name,在这行下面添加一行,用来重定向http请求

    server_name gitlab.example.com;
    
    rewrite ^(.*)$ https://$host$1 permanent;
    

    2、初始化Gitlab相关服务并完成安装

     # gitlab-ctl restart
    

    修改本地host文件,将gitlab.example.com设置为服务器Ip
    浏览器访问gitlab.example.com即可

    6.注意事项

    1、clone项目的时候,可以用http.sslverify=false,这个是为了避免本地证书无法进行克隆操作

    # git -c http.sslverify=false clone https://gitlab.yadong.com/root/myfirstproject.git
    

    2、执行 gitlab-ctl reconfigure 进行更新配置(只要修改了该文件,必须执行该命令才能生效)

    3、执行 gitlab-ctl restart 重启服务

    相关文章

      网友评论

          本文标题:Gitlab搭建指南

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