下面以 GitLab CE(社区版) 在 Linux 上的配置为例,按常见发行版给你一个从 安装 → 基础配置 → 启动 → 常用配置 的完整说明。
GitLab 官方推荐使用:
⚠️ 建议使用 全新干净的服务器,避免与 Nginx / PostgreSQL / Redis 冲突。
sudo apt update
sudo apt install -y curl openssh-server ca-certificates tzdata
curl -fsSL 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
GitLab 的主配置文件是:
/etc/gitlab/gitlab.rb
sudo vim /etc/gitlab/gitlab.rb
修改:
external_url 'http://gitlab.example.com'
✅ 如果是 IP 访问:
external_url 'http://192.168.1.100'
✅ 如果是 HTTPS:
external_url 'https://gitlab.example.com'
sudo gitlab-ctl reconfigure
⚠️ 这一步会:
sudo gitlab-ctl start
sudo gitlab-ctl status
sudo gitlab-ctl stop
http://服务器IP
设置 root 密码 (首次访问会自动跳转)
登录账户:
rootexternal_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
letsencrypt['auto_renew'] = true
git_data_dirs({
"default" => {
"path" => "/data/gitlab/git-data"
}
})
| 目录 | 作用 |
|---|---|
/etc/gitlab |
配置文件 |
/var/opt/gitlab |
数据文件 |
/var/log/gitlab |
日志 |
/opt/gitlab |
GitLab 程序 |
查看日志:
sudo gitlab-ctl tail
sudo netstat -tunlp | grep 80
free -h
sudo ufw allow 80
sudo ufw allow 443
docker run -d \
--hostname gitlab.example.com \
-p 443:443 -p 80:80 \
--name gitlab \
gitlab/gitlab-ce:latest
你可以直接告诉我:
我可以给你针对性配置方案 ✅