Gitlab搭建指南

2019-03-02  本文已影响0人  信仰年輕

1.本文目标

在centOS7系统上成功装上Gitlab

2.准备工作

关闭防火墙

# 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 重启服务

上一篇下一篇

猜你喜欢

热点阅读