安装Gitlab

关闭firewalld防火墙和selinux防火墙,如图1-2;
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
[root@localhost ~]# setenforce 0

1.3安装Omnibus Gitlab-ce package
方法:通过YUM方式一键安装相关组件。
在终端输入以下命令,如图1-3。
[root@localhost ~]# yum install -y curl policycoreutils openssh-server openssh-clients postfix

配置YUM仓库
[root@localhost~]#curl –Ss https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh|sh
说明:通过curl命令down下该脚本,并执行(该脚本在该文档同层目录下也提供,当该url发生变化时,可用)。见图 1-4。

命令执行结束,提示you can now install packages。

启动postfix邮件服务
终端输入以下命令即可,见图1-5。命令运行后无返回值提示。
[root@localhost~]#systemctl start postfix && systemctl enable postfix

安装Gitlab-ce 社区版

 

终端中输入以下命令,则开始下载安装gitlab-ce社区版。下图1-6为正在进行安装过程。
说明:gitlab-ce 社区版,gitlab-ee商业版。
[root@localhost~]#yum install –y gitlab-ce

/etc/yum.repos.d/  下面 会有之前准备的gitlab-ce资源

[root@gitlab yum.repos.d]# vim gitlab_gitlab-ce.repo

[gitlab_gitlab-ce]
name=gitlab_gitlab-ce
baseurl=https://packages.gitlab.com/gitlab/gitlab-ce/el/7/$basearch
repo_gpgcheck=1
gpgcheck=1
enabled=1
gpgkey=https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey
https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey/gitlab-gitlab-ce-3D645A26AB9FBD22.pub.gpg
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

[gitlab_gitlab-ce-source]
name=gitlab_gitlab-ce-source
baseurl=https://packages.gitlab.com/gitlab/gitlab-ce/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=1
enabled=1
gpgkey=https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey
https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey/gitlab-gitlab-ce-3D645A26AB9FBD22.pub.gpg
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

 

Gitlab安装配置管理

 

创建证书管理目录
[root@localhost ~]# mkdir -p /etc/gitlab/ssl

 

 

生成ras私钥
[root@localhost ~]#openssl genrsa –out “/etc/gitlab/ssl/gitlab.key” 2048
说明:openssl genrsa 用于生成rsa私钥文件并指定私钥长度和文件名

生成证书请求
[root@localhost ~]#openssl req –new –key “/etc/gitlab/ssl/gitlab.key” –out “/etc/gitlab/ssl/gitlab.csr”

 

生成签名证书
[root@localhost ~]# cd /etc/gitlab/ssl/
[root@localhost ssl]# openssl x509 -req -days 999
-in "/etc/gitlab/ssl/gitlab.csr"
-signkey "/etc/gitlab/ssl/gitlab.key"
-out "/etc/gitlab/ssl/gitlab.crt"

DH生成pem证书
[root@localhost ssl]# openssl dhparam -out /etc/gitlab/ssl/dhparams.pem 2048

 

权限控制
[root@localhost ssl]# chmod 600 *
[root@localhost ssl]# ll

 

配置Gitlab参数
2.2.1修改gitlab.rb文件
[root@localhost ssl]# vi /etc/gitlab/gitlab.rb

修改第13行为:external_url 'https://gitlab.xxxx.com';

找到redirect_http_to_https参数,并将该注释去除,false改成true;

 

找到ssl_certificate和ssl_certificate_key参数,修改成对应熟悉;

 

找到ssl_dhparam参数,修改成我们自己的的pem证书

 

初始化gitlab服务配置
[root@localhost ssl]# gitlab-ctl reconfigure

2.2.3 Nginx ssl 代理服务配置
[root@localhost ssl]# vi /var/opt/gitlab/nginx/conf/gitlab-http.conf
在server_name下新增rewrite ^(.*)$ https://$host$1 permanent;

2.2.4重启服务
[root@localhost ssl]# gitlab-ctl restart
重启服务,完成配置。

 

gitlab.xxxx.com,设置密码,并登陆。用户root密码1234567.qwe
正常访问,部署完成。

 

https改为http