下面给你一份从零搭建 Linux 版 GitLab 的实用指南,覆盖最常见场景(自建服务器 / 内网),以及最小可行步骤 + 常见问题。
gitlab.example.comsudo apt update
sudo apt upgrade -y
sudo apt install -y curl openssh-server ca-certificates tzdata perl
curl -fsSL https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
社区版用
gitlab-ce
企业版用gitlab-ee(功能多,免费也能用)
sudo EXTERNAL_URL="http://gitlab.example.com" apt install gitlab-ee -y
如果是 IP 访问:
sudo EXTERNAL_URL="http://192.168.1.100" apt install gitlab-ee -y
sudo gitlab-ctl reconfigure
sudo gitlab-ctl start
sudo gitlab-ctl status
sudo cat /etc/gitlab/initial_root_password
⚠️ 该文件 24 小时后自动删除
浏览器访问:
http://<你的IP或域名>
登录:
root编辑配置文件:
sudo vim /etc/gitlab/gitlab.rb
示例:
external_url 'http://gitlab.example.com'
保存后执行:
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'] = "xxx@qq.com"
gitlab_rails['smtp_password'] = "授权码"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = "xxx@qq.com"
然后:
sudo gitlab-ctl reconfigure
external_url 'https://gitlab.example.com'
letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['admin@example.com']
sudo gitlab-ctl reconfigure
# 启动
sudo gitlab-ctl start
# 停止
sudo gitlab-ctl stop
# 重启
sudo gitlab-ctl restart
# 查看日志
sudo gitlab-ctl tail
# 备份
sudo gitlab-rake gitlab:backup:create
# 恢复
sudo gitlab-rake gitlab:backup:restore BACKUP=时间戳
prometheus['enable'] = false
nginx['listen_port'] = 8080
external_url 'http://IP:8080'
sudo gitlab-rails console
user = User.where(id: 1).first
user.password = '新密码'
user.password_confirmation = '新密码'
user.save!
如果你更熟悉 Docker:
docker run --detach \
--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
✅ 最推荐方案:
如果你告诉我:
我可以直接给你定制版安装命令。