你这个问题比较简短,我先按最常见的几种需求给你分别说明。如果和你的实际场景不一致,可以再补充(比如是 GitLab CE/EE、Runner、HTTPS、邮件、备份 等)。
# 1. 安装依赖
sudo apt update
sudo apt install -y curl openssh-server ca-certificates tzdata
# 2. 添加 GitLab 仓库
curl -fsSL https://packages.gitlab.com/gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/gitlab-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/gitlab-keyring.gpg] https://packages.gitlab.com/gitlab/gitlab-ee/ubuntu $(lsb_release -cs) main" \
| sudo tee /etc/apt/sources.list.d/gitlab_gitlab-ee.list
# 3. 安装 GitLab
sudo apt update
sudo apt install gitlab-ee
如果你用的是 CE(社区版),把
gitlab-ee换成gitlab-ce
sudo yum install -y curl policycoreutils openssh-server
curl -fsSL https://packages.gitlab.com/gpg.key | sudo gpg --dearmor -o /etc/pki/rpm-gpg/gitlab-gpg
sudo yum install -y gitlab-ee
sudo vim /etc/gitlab/gitlab.rb
重点配置项:
external_url 'http://gitlab.example.com'
如果是 HTTPS:
external_url 'https://gitlab.example.com'
sudo gitlab-ctl reconfigure
⚠️ 这一步必须执行
浏览器访问:
http://服务器IP
或
http://域名
第一次登录:
rootsudo cat /etc/gitlab/initial_root_password
⚠️ 密码只保留 24 小时
# 查看状态
sudo gitlab-ctl status
# 重启
sudo gitlab-ctl restart
# 查看日志
sudo gitlab-ctl tail
# 停止
sudo gitlab-ctl stop
external_url 'http://IP:8080'
nginx['listen_port'] = 8080
然后:
sudo gitlab-ctl reconfigure
登录后:
右上角头像 → Preferences → Localization → 简体中文
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
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh | sudo bash
sudo apt install gitlab-runner
注册 Runner:
sudo gitlab-runner register
sudo gitlab-backup create
sudo gitlab-backup restore
可以继续告诉我:
我可以直接给你一步一步的精确配置。