在 Linux 服务器上部署和设置 GitLab,常见有两种方式:
✅ Omnibus 包安装(官方推荐,最常用)
✅ Docker 安装(适合容器化环境)
下面我以 最主流的 Ubuntu / Debian / CentOS 为例,给你一套完整、可操作的 GitLab 安装与基础配置流程。
# Ubuntu / Debian
sudo apt update
sudo apt install -y curl openssh-server ca-certificates tzdata
# CentOS / Rocky
sudo yum install -y curl policycoreutils openssh-server
curl -fsSL https://packages.gitlab.com/setup.sh | sudo bash
sudo EXTERNAL_URL="http://gitlab.example.com" apt install gitlab-ee
替换成你自己的域名或 IP,例如:
sudo EXTERNAL_URL="http://192.168.1.100" apt install gitlab-ee
sudo apt install gitlab-ee
sudo gitlab-ctl reconfigure
⚠️ 这一步时间较长,耐心等待。
浏览器访问:
http://服务器IP
首次登录:
rootsudo cat /etc/gitlab/initial_root_password
⚠️ 密码只在 24 小时内有效,建议登录后立即修改
sudo vim /etc/gitlab/gitlab.rb
常用配置项:
external_url 'http://gitlab.example.com'
# 邮箱配置(可选)
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "xxx@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
# 查看状态
sudo gitlab-ctl status
# 启动 / 停止 / 重启
sudo gitlab-ctl start
sudo gitlab-ctl stop
sudo gitlab-ctl restart
# 查看日志
sudo gitlab-ctl tail
docker run -d \
--hostname gitlab.example.com \
--publish 443:443 --publish 80:80 --publish 22:22 \
--name gitlab \
--restart always \
--volume /srv/gitlab/config:/etc/gitlab \
--volume /srv/gitlab/logs:/var/log/gitlab \
--volume /srv/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ee:latest
✅ 关闭注册(防止乱注册)
Admin → Settings → General → Sign-up restrictions
✅ 配置 SSH / HTTPS
✅ 定期备份:
sudo gitlab-backup create
gitlab-ctl reconfigure你可以直接告诉我:
1️⃣ 你的 Linux 发行版
2️⃣ 是 内网 / 公网 使用
3️⃣ 是否需要 HTTPS / 邮箱 / CI/CD
我可以给你 定制版 GitLab 安装方案 ✅