Centos7 自建GitLab

 尕豆   2020-03-23 14:17   201 人阅读  0 条评论

一、 安装并配置必要的依赖关系

在CentOS系统上安装所需的依赖:ssh,防火墙,postfix(用于邮件通知) ,wget,以下这些命令也会打开系统防火墙中的HTTP和SSH端口访问。

注意:用户不是管理员权限,会出现警告

可以使用 su root 切换root权限

1.安装ssh

sudo yum install -y curl policycoreutils-python openssh-server

2.将SSH服务设置成开机自启动,安装命令:

sudo systemctl enable sshd

3.启动SSH服务,安装命令:

sudo systemctl start sshd

4。安装防火墙(如果已经安装了防火墙并且已经在运行状态,则可直接进行第6步)

yum install firewalld systemd -y

5.开启防火墙,安装命令:

service firewalld  start

6.添加http服务到firewalld,pemmanent表示永久生效,若不加--permanent系统下次启动后就会失效。

sudo firewall-cmd --permanent --add-service=http

7.重启防火墙,安装命令:

sudo systemctl reload firewalld

8.接下来,安装Postfix以发送通知邮件,安装命令:

sudo yum install postfix

9.将postfix服务设置成开机自启动,安装命令:

sudo systemctl enable postfix

10.启动postfix,安装命令:

sudo systemctl start postfix

在安装Postfix期间,可能会出现配置屏幕。选择“Internet Site”并按enter键。使用您的服务器的外部DNS以“mail name”并按enter。如果出现额外的屏幕,继续按enter键接受默认值。

如果报错“Job for postfix.service failed because the control process exited with error”

修改 /etc/postfix/main.cf的设置

vim /etc/postfix/main.cf

inet_protocols = all
inet_interfaces = all

然后再重新启动即可

11.wget 用于从外网上下载插件

检查系统中是否已经安装wget,使用命令若出现下图wget相关版本描述则说明系统中已经安装wget 若报系统找不到命令说明wget未安装

若wget未安装则进行安装,安装命令:

yum -y install wget

12.建议安装vim编辑器  安装命令:

yum install vim -y


二、添加GitLab镜像源并安装gitlab服务器

1.添加gitlab镜像

这里用的是清华大学的镜像源 地址如下,可以自行了解

https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/

这里使用的是最新的包(2020-03-22 21:58)

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.9.0-ce.0.el7.x86_64.rpm

2.安装gitlab 安装命令:

rpm -i gitlab-ce-12.9.0-ce.0.el7.x86_64.rpm

一般情况下会提示确实Python依赖执行如下安装:

yum install -y policycoreutils-python

然后重新执行:

rpm -i gitlab-ce-12.9.0-ce.0.el7.x86_64.rpm

安装过程需要些时间,稍等片刻不报错就算完成了(这里本人安装很顺利)。

4.修改gitlab配置文件指定服务器ip和自定义端口:

vim  /etc/gitlab/gitlab.rb

配置 external_url 为自己的域名 'http://gitlab.XXX.com'

external_url 'http://gitlab.XXX.com'

进入编辑器后按“i”键进入编辑状态,修改完毕后,按ESC键退出编辑状态

然后退出并保存,命令输入“:wq”

ps:注意这里设置的端口不能被占用,默认是8080端口,如果8080已经使用,请自定义其它端口,并在防火墙设置开放相对应得端口

5.重置并启动GitLab

执行:

gitlab-ctl reconfigure
gitlab-ctl restart

提示  "ok: run:"表示启动成功

6.访问 GitLab页面

如果没有域名,直接输入服务器ip和指定端口进行访问

初始账户: root 第一次访问的时候会让你设置超管密码


三、Gitlab配置HTTPS

注:使用的Gitlab默认"80"端口

阿里云免费HTTPS证书申请

使用自己设的加密证书应设置

letsencrypt['enable'] = false
letsencrypt['auto_renew'] = false

在/etc/gitlab/gitlab.rb禁用自动更新。否则,gitlab-ctl reconfigure 可能会尝试更新证书,从而覆盖它们。

mkdir /etc/gitlab/ssl   #把申请的证书放在这里
vim  /etc/gitlab/gitlab.rb   #打开配置文件
external_url 'external_url 'https://gitlab.XXX.com'  # 注:一定要HTTPS
nginx['redirect_http_to_https']= true   #取消注释改为 true
nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.pem"    #放置对应的证书密钥
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.key" #放置对应的证书密钥
gitlab-ctl reconfigure  #使配置生效
vim /var/opt/gitlab/nginx/conf/gitlab-http.conf #设置https

配置一般自动生成把sll端口 "80"换成"443"

gitlab-ctl restart  # 使配置生效

重新访问gitlab即可


本文地址:http://www.pgnote.com/?id=26
版权声明:本文为原创文章,版权归 尕豆 所有,欢迎分享本文,转载请保留出处!

 发表评论


表情

还没有留言,还不快点抢沙发?