在Debian系统上配置GitLab网络涉及多个步骤,以下是一个详细的指南:
对于Debian/Ubuntu系统:
sudo apt-get update
sudo apt-get install -y curl openssh-server ca-certificates tzdata
对于CentOS/RHEL系统:
sudo yum install -y curl policycoreutils-python openssh-server openssh-clients postfix
使用官方安装脚本:
对于Ubuntu/Debian系统:
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo EXTERNAL_URL "http://gitlab.example.com" apt-get install gitlab-ce
对于CentOS系统:
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce
/etc/gitlab/gitlab.rb
文件,设置外部URL:sudo vi /etc/gitlab/gitlab.rb
找到并修改以下行:
external_url 'http://your_server_ip'
保存并退出编辑器。
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
在浏览器中输入你的服务器IP地址或域名,即可显示GitLab的界面。首次登录会强制用户修改密码,密码修改成功后,输入用户名和密码进行登录。
如果服务器启用了防火墙,需要开放GitLab使用的端口(如HTTP默认端口80和HTTPS默认端口443)。如果有网络地址转换(NAT)设备,需要将外部网络的访问请求转发到GitLab服务器的内网IP地址上。
对于安全性要求较高的环境,可以配置GitLab使用HTTPS。需要获取一个有效的SSL证书,并将其配置到GitLab中。
编辑 /etc/gitlab/gitlab.rb
文件,设置 ssl_certificate
和 ssl_certificate_key
参数为SSL证书和私钥文件的路径,然后重新配置并重启GitLab:
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
安装邮件服务(如Postfix),并配置SMTP服务器相关信息:
对于Ubuntu系统:
sudo apt-get install postfix
编辑 /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
编辑 /etc/postfix/sasl_passwd
文件,添加认证信息:
[smtp.example.com]:587 your_username:your_password
重载配置:
sudo postmap /etc/postfix/sasl_passwd
sudo systemctl reload postfix
编辑 /etc/gitlab/gitlab.rb
文件,添加以下配置:
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
gitlab_rails['gitlab_email_from'] = "your_username@example.com"
user["git_user_email"] = "your_username@example.com"
重新配置并重启GitLab:
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart