sudo yum update -y
curl
(下载工具)、policycoreutils
(SELinux策略工具)、openssh-server
(SSH服务,用于代码推送)、postfix
(邮件服务,用于通知)。sudo yum install -y curl policycoreutils-python openssh-server postfix
sudo systemctl enable sshd
sudo systemctl start sshd
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
GitLab官方提供了CentOS的YUM仓库,通过以下命令添加,以便后续安装最新版本的GitLab Community Edition(CE,社区版)。
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
使用YUM命令从官方仓库安装GitLab CE,安装过程会自动解决依赖问题。
sudo yum install -y gitlab-ce
GitLab的主配置文件为/etc/gitlab/gitlab.rb
,需修改以下关键参数:
your_server_ip
或域名为你的服务器地址(如http://192.168.1.100
或https://gitlab.example.com
),这是GitLab的入口地址。sudo vi /etc/gitlab/gitlab.rb
# 找到并修改以下行(取消注释并替换)
external_url 'http://your_server_ip'
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.gmail.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "your_email@gmail.com"
gitlab_rails['smtp_password'] = "your_app_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@gmail.com'
修改完成后,保存并退出编辑器。
gitlab.rb
中的设置,生成Nginx配置、数据库初始化等。sudo gitlab-ctl reconfigure
sudo gitlab-ctl start
sudo systemctl enable gitlab-runsvdir
external_url
(如http://192.168.1.100
),进入GitLab登录页面。root
)的密码,设置完成后即可登录。sudo yum install -y certbot python2-certbot-nginx
sudo certbot --nginx -d your_gitlab_url
/var/opt/gitlab/backups
目录。sudo gitlab-rake gitlab:backup:create
sudo setenforce 0
sudo sed -ri 's/(SELINUX).*/\1disabled/g' /etc/selinux/config
通过以上步骤,即可在CentOS上成功搭建GitLab服务器,实现代码托管、协作开发等功能。如需进一步定制(如调整端口、添加用户),可通过GitLab Web界面或配置文件完成。