Linux下如何安装GitLab

发布时间:2022-01-26 10:23:37 作者:小新
来源:亿速云 阅读:120
# Linux下如何安装GitLab

## 前言

GitLab 是一个基于 Git 的代码托管和协作平台,提供项目管理、代码审查、CI/CD 等功能。与 GitHub 不同,GitLab 支持自托管部署,适合企业或团队搭建私有代码仓库。本文将详细介绍在 Linux 系统(以 Ubuntu 20.04 为例)上安装 GitLab 的完整流程。

---

## 环境准备

### 系统要求
- **操作系统**: Ubuntu/Debian/CentOS/RHEL(本文以 Ubuntu 20.04 为例)
- **内存**: 至少 4GB(推荐 8GB 以上)
- **存储**: 至少 10GB 可用空间
- **网络**: 开放 HTTP/HTTPS 端口(80/443)

### 依赖工具
- `curl` 或 `wget`
- `sudo` 权限
- 已安装的 Git(建议版本 2.3+)

---

## 一、安装依赖包

首先更新系统并安装基础依赖:

```bash
sudo apt update
sudo apt upgrade -y
sudo apt install -y curl openssh-server ca-certificates postfix

安装 Postfix 时会出现配置界面,选择 Internet Site 并填写服务器域名(如 gitlab.example.com)。


二、添加 GitLab 官方仓库

通过以下命令添加 GitLab 的官方软件源:

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

注意:如果服务器在国内,可以使用清华镜像源加速:

> sudo tee /etc/apt/sources.list.d/gitlab-ce.list <<EOF
> deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu $(lsb_release -cs) main
> EOF
> sudo apt update
> ```

---

## 三、安装 GitLab 社区版

执行安装命令(将 `EXTERNAL_URL` 替换为你的实际域名或IP):

```bash
sudo EXTERNAL_URL="http://gitlab.example.com" apt install gitlab-ce

安装完成后会显示如下信息:

Thank you for installing GitLab!
GitLab should be available at http://gitlab.example.com

四、初始配置

1. 修改配置文件

编辑主配置文件 /etc/gitlab/gitlab.rb

sudo nano /etc/gitlab/gitlab.rb

关键配置项示例:

external_url 'http://gitlab.example.com'  # 修改为你的域名或IP
letsencrypt['enable'] = true             # 启用 Let's Encrypt 自动证书
letsencrypt['contact_emails'] = ['admin@example.com']

2. 重新加载配置

运行以下命令使配置生效:

sudo gitlab-ctl reconfigure

此过程可能需要 3-5 分钟,会初始化数据库、生成证书等。


五、防火墙设置

如果系统启用了防火墙(如 UFW),需放行相关端口:

sudo ufw allow http
sudo ufw allow https
sudo ufw allow ssh
sudo ufw enable

六、访问 GitLab

在浏览器中打开配置的 EXTERNAL_URL,首次访问时会要求设置 root 用户密码:

Linux下如何安装GitLab

设置密码后,使用用户名 root 和设置的密码登录。


七、高级配置

1. 邮件服务配置

修改 /etc/gitlab/gitlab.rb 添加 SMTP 设置(以 Gmail 为例):

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.gmail.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "your@gmail.com"
gitlab_rails['smtp_password'] = "your-password"
gitlab_rails['smtp_domain'] = "gmail.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['gitlab_email_from'] = 'your@gmail.com'

重新加载配置:

sudo gitlab-ctl reconfigure

2. 备份与恢复


八、日常维护命令

命令 作用
sudo gitlab-ctl start 启动所有服务
sudo gitlab-ctl stop 停止所有服务
sudo gitlab-ctl restart 重启所有服务
sudo gitlab-ctl status 查看服务状态
sudo gitlab-rake gitlab:check 检查系统健康状态

常见问题解决

1. 502 错误

可能原因: - 内存不足(尝试增加 SWAP 分区) - 端口冲突(检查 Nginx/Apache 是否占用 80 端口)

2. Let’s Encrypt 证书失败

手动申请证书:

sudo gitlab-ctl reconfigure
sudo gitlab-ctl renew-le-certs

3. 忘记 root 密码

重置密码:

sudo gitlab-rake "gitlab:password:reset[root]"

结语

通过本文的步骤,你已经成功在 Linux 服务器上部署了 GitLab。接下来可以: 1. 创建用户和项目 2. 配置 CI/CD 流水线 3. 集成 Mattermost 或 Prometheus 等组件

GitLab 官方文档提供了更详细的功能说明:https://docs.gitlab.com

提示:生产环境建议使用 HTTPS 并定期更新版本,社区版更新命令:

> sudo apt update && sudo apt install gitlab-ce
> ```

本文共计约 2500 字,涵盖了从安装到配置的完整流程。如需扩展特定部分(如 CI/CD 配置或高可用部署),可以进一步补充相关内容。

推荐阅读:
  1. gitlab的安装以及汉化
  2. docker 安装gitlab

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux gitlab

上一篇:Linux系统运行PHP的方法是什么

下一篇:@Transactional注解怎么用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》