下面给你一份**在 CentOS 上安装并配置 GitLab(CE 社区版)**的完整流程,适用于 CentOS 7 / CentOS 8 Stream,并包含常见配置项。
sudo yum update -y
sudo yum install -y curl policycoreutils openssh-server \
openssh-clients postfix wget
sudo systemctl enable sshd
sudo systemctl start sshd
sudo systemctl enable postfix
sudo systemctl start postfix
curl -fsSL https://packages.gitlab.com/setup.sh | sudo bash
sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ce
⚠️ 把
gitlab.example.com换成你的 服务器 IP 或域名
例如:
sudo EXTERNAL_URL="http://192.168.1.100" yum install -y gitlab-ce
sudo gitlab-ctl reconfigure
这一步会自动配置 Nginx、数据库、Redis 等组件
配置文件路径:
/etc/gitlab/gitlab.rb
常用配置项示例:
external_url 'http://gitlab.example.com'
external_url 'http://gitlab.example.com:8080'
nginx['listen_port'] = 8080
external_url 'http://gitlab.yourdomain.com'
修改后执行:
sudo gitlab-ctl reconfigure
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
http://服务器IP
首次登录会要求设置 root 密码
默认用户:
root# 查看状态
sudo gitlab-ctl status
# 启动 / 停止 / 重启
sudo gitlab-ctl start
sudo gitlab-ctl stop
sudo gitlab-ctl restart
# 查看日志
sudo gitlab-ctl tail
# 重新加载配置
sudo gitlab-ctl reconfigure
修改 /etc/gitlab/gitlab.rb:
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "your@qq.com"
gitlab_rails['smtp_password'] = "授权码"
gitlab_rails['smtp_domain'] = "qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
然后:
sudo gitlab-ctl reconfigure
登录后:
右上角头像 → Preferences → Localization → 简体中文
sudo gitlab-rake "gitlab:password:reset[root]"
如果你愿意,我可以帮你:
只要告诉我你的 CentOS 版本和用途即可。