Ubuntu 上安装与配置 GitLab 的完整步骤
一 环境准备与资源建议
- 操作系统:Ubuntu 20.04/22.04/24.04 LTS(64 位)
- 硬件建议:至少 4GB 内存(推荐 8GB+)、2 核 CPU(推荐 4 核+)、10GB 磁盘(推荐 20GB+)
- 网络与端口:开放 80/443/22(HTTP/HTTPS/SSH),域名解析到服务器更佳
- 权限:全程使用 sudo 或 root 执行
二 安装步骤 Omnibus 方式(推荐)
- 更新系统并安装依赖
- sudo apt update && sudo apt install -y curl openssh-server ca-certificates tzdata perl
- 添加 GitLab 官方仓库并安装
- curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
- sudo apt install -y gitlab-ce
- 首次配置与启动
- sudo gitlab-ctl reconfigure
- 初始管理员账号为 root,初始密码在 /etc/gitlab/initial_root_password,该文件会在 24 小时后自动删除,请尽快保存
- 访问
- 浏览器打开:http://<服务器IP> 或 http://<你的域名>
三 关键配置
- 编辑主配置文件
- sudo vim /etc/gitlab/gitlab.rb
- 设置外部访问地址(示例):external_url ‘http://gitlab.example.com’ 或 ‘http://<服务器IP>’
- 使配置生效
- sudo gitlab-ctl reconfigure
- 常用运维命令
- 启动/停止/重启/状态:sudo gitlab-ctl start|stop|restart|status
- 邮件通知(可选,示例 SMTP)
- 在 gitlab.rb 中启用并填写:
- gitlab_rails[‘smtp_enable’] = true
- gitlab_rails[‘smtp_address’] = “smtp.example.com”
- gitlab_rails[‘smtp_port’] = 587
- gitlab_rails[‘smtp_user_name’] = “user@example.com”
- gitlab_rails[‘smtp_password’] = “password”
- gitlab_rails[‘smtp_domain’] = “example.com”
- gitlab_rails[‘smtp_authentication’] = “login”
- gitlab_rails[‘smtp_enable_starttls_auto’] = true
- 修改后执行:sudo gitlab-ctl reconfigure
四 防火墙与安全组
- UFW 放行端口
- sudo ufw allow 80/tcp
- sudo ufw allow 443/tcp
- sudo ufw allow 22/tcp
- sudo ufw reload
- 云服务器安全组
- 放行 TCP 80/443/22 入站规则,来源按需限制(如办公网段或 0.0.0.0/0)
- 端口冲突处理
- 若本机已有 Nginx/Apache/SSH 占用 80/443/22,请先调整其端口或调整 GitLab 的监听端口后再 reconfigure
五 Docker 方式(可选)
- 快速启动(数据持久化到本地目录)
- docker run --detach
–hostname localhost
–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-ce:latest
- 说明
- 首次访问方式与 Omnibus 一致;如需域名访问,将 –hostname 改为你的域名并在 gitlab.rb 中设置 external_url
- 数据目录挂载可实现配置、日志与仓库数据的持久化