在 Linux 下设置 GitLab(CE 社区版,生产环境常用),一般推荐 Omnibus 安装方式,简单、稳定。下面按 步骤 + 常见配置 给你一套完整说明(示例以 Ubuntu / Debian 为主,CentOS/RHEL 也有说明)。
# Ubuntu / Debian
sudo apt update && sudo apt upgrade -y
# CentOS / RHEL
sudo yum update -y
sudo apt install -y curl openssh-server ca-certificates tzdata
curl https://packages.gitlab.com/gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/gitlab-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/gitlab-archive-keyring.gpg] https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu $(lsb_release -cs) main" | \
sudo tee /etc/apt/sources.list.d/gitlab_gitlab-ce.list
sudo apt update
sudo apt install -y gitlab-ce
sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install -y gitlab-ce
sudo vim /etc/gitlab/gitlab.rb
external_url 'http://gitlab.example.com'
⚠️ 如果是 IP:
external_url 'http://192.168.1.100'
sudo gitlab-ctl reconfigure
⚠️ 第一次执行会较长时间(几分钟)
浏览器访问:
http://服务器IP
首次访问会要求设置 root 用户密码。
登录:
root# 查看状态
sudo gitlab-ctl status
# 启动 / 停止 / 重启
sudo gitlab-ctl start
sudo gitlab-ctl stop
sudo gitlab-ctl restart
# 查看日志
sudo gitlab-ctl tail
external_url 'http://192.168.1.100:8080'
nginx['listen_port'] = 8080
然后执行:
sudo gitlab-ctl reconfigure
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "123456@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
external_url 'https://gitlab.example.com'
letsencrypt['enable'] = true
sudo ufw allow 80
sudo ufw allow 22
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
sudo gitlab-ctl uninstall
sudo apt remove gitlab-ce -y
我可以帮你进一步讲:
告诉我你现在是 学习 / 公司内网 / 生产环境 用?我可以按场景给你一套更合适的配置 ✅