在CentOS上部署GitLab的流程大致可以分为以下几个步骤:
更新系统:
sudo yum update -y
安装必要的依赖包:
sudo yum install -y curl policycoreutils-python openssh-server perl
配置防火墙:
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
设置SSH服务开机自启动并启动SSH服务:
sudo systemctl enable sshd
sudo systemctl start sshd
安装Postfix来发送通知邮件(可选):
sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
添加GitLab官方仓库:
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
安装GitLab社区版(选择社区版或企业版):
sudo EXTERNAL_URL="http://your_server_ip" yum install -y gitlab-ce
将 http://your_server_ip 替换为你的服务器IP地址或域名。
修改GitLab配置文件:
sudo vi /etc/gitlab/gitlab.rb
配置外部URL: 找到并修改以下行:
external_url 'http://your_server_ip'
将其更改为你服务器的实际URL。
配置邮件服务(可选): 如果你需要配置邮件服务,可以添加以下配置:
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.example.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "your_email@example.com"
gitlab_rails['smtp_password'] = "your_password"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = 'your_email@example.com'
重新配置并启动GitLab:
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
http://your_server_ip,按照提示设置管理员账户的密码。关闭防火墙和SELinux(可选但推荐):
sudo systemctl disable --now firewalld
sudo sed -ri 's/(SELINUX).*/\1disabled/g' /etc/selinux/config
sudo setenforce 0
配置EPEL源(如果需要):
sudo yum install -y epel-release