之前的文章介绍了使用docker-compose安装GitLab,本篇文章介绍使用安装包形式安装GitLab。
参考文档
GitLab 官网 CentOS 安装文档 ,使用国内IP访问时,会跳转到极狐GitLab
前言
极狐GitLab 是国内版的 GitLab,与 GitLab 相同,都提供代码托管与软件安装镜像
本文以 GitLab EE 为例(非极狐GitLab)
本文使用的IP为
192.168.56.104
(原因:如果使用域名,必须拥有这个域名的所有权,并增加解析才可以,要不然在 Docker 容器中,无法使用域名检出代码,因为根据域名找不到DNS记录
)
安装GitLab
安装命令补全工具
1 | yum install -y bash-completion |
安装和配置必须的依赖项
1 | # 安装必要的依赖 |
安装 Postfix 以发送电子邮件通知(可选项)
用户使用新IP登录时发送邮件
用户使用邮件找回密码
用户PR邮件提示等
如果您想使用其他方式发送邮件,可以跳过此步骤,并在安装GitLab后配置外部SMTP服务器。
在安装 Postfix 的过程中可能会出现一个配置界面,在该界面中选择“Internet Site”并按下回车。把“mail name”设置为您服务器的外部 DNS 域名并按下回车。如果还有其它配置界面出现,继续按下回车以接受默认配置。
1 | sudo yum install postfix |
配置 GitLab EE 软件源镜像
1 | mkdir -p /opt/gitlab |
下载安装 GitLab EE
1 | sudo EXTERNAL_URL="http://192.168.56.104" yum install -y gitlab-ee |
安装好了,访问:http://192.168.56.104
管理员 root 用户操作相关
查看用户初始密码
1 | # 用户名为 root |
使用初始密码登录root,进入系统后会让修改密码,输入初始密码和两次新密码保存修改后重新登录即可。
将语言调整为中文,网址:http://<GitLab服务器IP>/-/profile/preferences
,在 Localization
一栏将 Language
修改为 Chinese, Simplified - 简体中文
,保存修改后刷新页面即可显示中文。
至此,GitLab就安装完成了。
相关命令
1 | # 查看 GitLab 状态 |
GitLab https配置
说明
GitLab https 使用的是 nginx 实现的
本文使用的IP是 192.168.56.104(原因:如果使用域名,必须拥有这个域名的所有权,并增加解析才可以,要不然在 Docker 容器中,无法使用域名检出代码,因为根据域名找不到DNS记录)
如果使用自己生成的证书,git 检出代码、推送代码会失败,原因是无法验证证书的有效性,可以使用名 git config --global http.sslVerify false
禁用ssl的验证
生成证书
如果有域名,可以使用域名申请免费的证书,下载 Nginx 证书即可
如果没有域名,可使用下列命令在 CentOS 上生成
创建证书文件夹
1 | mkdir -p /etc/gitlab/ssl |
生成证书
1 | # 如果出现 -bash: openssl: command not found,请安装 openssl:yum -y install openssl |
最终生成了:ca.crt、ca.key、ca.srl、server.crt、server.csr、server.key,其中 server.crt
和 server.key
就是 Nginx 使用的证书。
配置Https
安装vim
1 | yum install -y vim |
编辑 gitlab.rb 文件
1 | vim /etc/gitlab/gitlab.rb |
修改内容如下
1 | # 填写你的域名,注意是https |
重新配置 GitLab
1 | sudo gitlab-ctl reconfigure |
查看GitLab各服务的状态
1 | sudo gitlab-ctl status |
修改DNS(或者在本地 hosts 将域名指向 GitLab服务器IP),访问https://<GitLab域名>
即可(如果使用自己生成的证书,可能会提示您的连接不是私密连接
,忽略即可)。
如果是用 IP 方式配置的直接访问 https://IP地址
即可。
到此 GitLab 的 https 访问就配置好了。
到此 GitLab 安装包方式安装就好了,后面还需要使用 GitLab Runner,就暂时不在这展开了。