这里有最新的使用文档和教程
如何在Linux系统上搭建GitLab
环境准备
1.操作系统:CentOS 7或者Ubuntu 16.04
2.数据库:PostgreSQL或MySQL
3.邮件服务:可以使用Postfix或者Exim等邮件服务
4.域名:建议使用二级域名,例如gitlab.example.com
安装GitLab
1.安装必要的软件包
使用以下命令来安装必要的软件包:
sudo yum install curl policycoreutils openssh-server openssh-clients postfix
2.添加GitLab的GPG Key
使用以下命令,将GitLab的GPG Key添加到系统中:
curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add -
3.添加GitLab源
使用以下命令来添加GitLab源:
sudo curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
4.安装GitLab
使用以下命令来安装GitLab:
sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ce
注意:其中的EXTERNAL_URL需要修改为你的二级域名。
5.启动GitLab服务
安装完成后,使用以下命令来启动GitLab服务:
sudo gitlab-ctl reconfigure
中文化GitLab
在安装完成GitLab后,默认的语言是英文,为了更好地适应中文的使用,我们需要将GitLab进行中文化。
1.修改配置文件
在GitLab的配置文件中添加以下配置:
sudo vim /etc/gitlab/gitlab.rb
在文件的末尾添加以下代码:
## Chinese Language
gitlab_rails['translations'] = { 'zh-CN' => 'Simplified Chinese' }
gitlab_rails['gitlab_default_theme'] = 2
gitlab_workhorse['auth_backend'] = "http://127.0.0.1:8080"
2.生效配置文件
在添加完配置后,使用以下命令让配置文件生效:
sudo gitlab-ctl reconfigure
3.重启服务
使用以下命令将服务重启:
sudo gitlab-ctl restart
邮件通知配置
GitLab支持邮件通知功能,通过配置邮件服务可以实现GitLab的邮件通知功能。
1.安装邮件服务
使用以下命令来安装Postfix邮件服务:
sudo yum install postfix
2.配置邮件服务
在安装完邮件服务后,使用以下命令进行配置:
sudo vim /etc/postfix/main.cf
在配置文件中添加以下配置:
relayhost = [smtp.example.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
smtp_use_tls = yes
其中relayhost需要根据实际情况填写。
3.添加认证信息
在/etc/postfix/sasl_passwd文件中添加认证信息:
[smtp.example.com]:587 your_username:your_password
其中[smtp.example.com]:587需要根据实际情况填写。
4.重载配置
使用以下命令来重载配置:
sudo postmap /etc/postfix/sasl_passwd
sudo systemctl reload postfix
5.修改GitLab配置
在GitLab的配置文件中添加以下配置:
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.example.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "your_username"
gitlab_rails['smtp_password'] = "your_password"
gitlab_rails['smtp_domain'] = "example.com"
gitlab_rails['smtp_authentication'] = :login
gitlab_rails['smtp_enable_starttls_auto'] = true
其中smtp_address、smtp_user_name、smtp_password、smtp_domain需要根据实际情况填写。
6.重启GitLab服务
使用以下命令来重启GitLab服务:
sudo gitlab-ctl restart