1. 安装依赖软件
在CentOS 6.5系统上安装GitLab前,需要先安装一些必备软件和依赖关系软件。
打开终端,输入以下命令:
sudo yum install curl openssh-server openssh-clients postfix cronie
其中Postfix是一个邮件传输代理软件,GitLab在发送邮件时需要用到它;cronie是一个定时调度服务,在GitLab备份时需要进行调用。
安装完成后,需要启动和设置cronie和Postfix服务。
sudo service crond start
sudo chkconfig crond on
sudo service postfix start
sudo chkconfig postfix on
2. 配置yum源
默认的yum源比较慢,我们可以选择使用清华大学的yum源,提高软件下载速度。
首先备份默认yum源:
sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
然后下载清华大学的yum源:
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.tuna.tsinghua.edu.cn/help/centos/?repo=centos-base-6
执行以下命令来清除缓存:
sudo yum clean all
sudo yum makecache
3. 安装GitLab
接下来可以开始GitLab的安装了,在终端输入以下命令:
sudo rpm -Uvh https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/gitlab-ce-9.1.0-ce.0.el6.x86_64.rpm
等待安装完成后,输入以下命令来重新配置GitLab:
sudo gitlab-ctl reconfigure
执行该命令,GitLab将自动进行初始化和配置工作,首次启动需要等待一段时间。
安装完成后,在浏览器中输入以下地址:
http://your-server-ip
即可访问GitLab。
4. GitLab的配置
4.1 修改端口号
默认情况下,GitLab的HTTP监听端口为80,如果需要修改端口号,在终端输入以下命令:
sudo vim /etc/gitlab/gitlab.rb
修改下面的配置信息:
nginx['listen_port'] = 8080
web_server['external_users'] = ['nginx']
gitlab_workhorse['listen_network'] = "tcp"
gitlab_workhorse['listen_addr'] = "127.0.0.1:8181"
其中listen_port表示新的端口号,这里为8080;external_users设置为nginx,表示使用nginx作为GitLab的前端;listen_addr为GitLab工作进程的监听地址。
修改完成后,需要重新配置GitLab:
sudo gitlab-ctl reconfigure
重新启动GitLab服务,修改后的端口号才能生效:
sudo gitlab-ctl restart
4.2 SMTP配置
GitLab在发送邮件时需要使用SMTP协议,需要进行以下配置。
在终端输入以下命令打开GitLab的配置文件:
sudo vim /etc/gitlab/gitlab.rb
找到下面一行配置,将其中的参数进行设置:
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_username'] = "your_email@163.com"
gitlab_rails['smtp_password'] = "your_email_password"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['smtp_openssl_verify_mode'] = 'peer'
其中smtp_address设置为邮件服务器SMTP地址;smtp_port为SMTP端口号;smtp_authentication对登录方式进行设置;smtp_username和smtp_password为SMTP账户和密码;smtp_enable_starttls_auto设置为true开启TLS加密;smtp_tls设置为true启用TLS加密;smtp_openssl_verify_mode设置为peer表示进行对等验证。
设置完成后,在终端输入以下命令重新配置GitLab。
sudo gitlab-ctl reconfigure
测试邮件是否发送成功,执行以下命令发送测试邮件:
sudo gitlab-rails console
Notify.test_email("your_email@163.com", "Test Subject", "Test Body").deliver_now
exit
其中your_email@163.com为接收邮件的地址,Test Subject为邮件的主题,Test Body为邮件的正文。
4.3 配置HTTPS
HTTPS在Web应用程序中是常用的安全传输协议,可以为网站提供全面的身份验证、数据完整性和保密性。
在终端输入以下命令,打开GitLab的配置文件:
sudo vim /etc/gitlab/gitlab.rb
找到下面这一行配置信息,将它从#注释符号中移除:
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_session_cache'] = 'builtin:1000 shared:SSL:10m'
nginx['ssl_protocols'] = 'TLSv1 TLSv1.1 TLSv1.2'
nginx['ssl_ciphers'] = 'HIGH:!aNULL:!MD5'
nginx['ssl_prefer_server_ciphers'] = 'on'
其中ssl_certificate和ssl_certificate_key参数为证书位置,ssl_session_cache、ssl_protocols、ssl_ciphers和ssl_prefer_server_ciphers这些配置可以根据需要进行修改。
配置完成后,执行下面的命令使所有更改生效:
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
重新启动GitLab服务,HTTPS将会被开启。
5. 总结
本文介绍了如何在CentOS 6.5系统上安装GitLab,并对GitLab进行了相关的配置,包括修改端口号、SMTP配置和HTTPS配置。
通过本文介绍,您可以成功运行GitLab,在自己的服务器上进行协作开发和代码管理。