温馨提示×

gitlab在ubuntu上的配置步骤

小樊
37
2025-10-25 06:41:50
栏目: 智能运维

GitLab在Ubuntu上的配置步骤

1. 准备工作

  • 系统要求:Ubuntu 20.04及以上版本(推荐),确保系统已联网;至少2GB RAM(推荐4GB以上)、20GB可用存储空间。
  • 权限要求:需具有root权限或sudo权限。

2. 安装依赖包

打开终端,执行以下命令更新系统并安装必要依赖(包括SSH服务、证书、时区数据等):

sudo apt update && sudo apt upgrade -y
sudo apt install -y curl openssh-server ca-certificates tzdata postfix

安装过程中,Postfix会提示配置类型,选择“Internet Site”(默认),填写系统域名(可选)即可。

3. 添加GitLab官方软件源

执行以下命令添加GitLab社区版(CE)的APT源(以Ubuntu 22.04为例,若使用其他版本,将$(lsb_release -cs)替换为对应代号,如focal代表20.04):

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

该命令会自动添加GitLab的GPG密钥和软件源到系统。

4. 安装GitLab社区版

通过APT包管理器安装GitLab CE(默认安装最新稳定版):

sudo apt install -y gitlab-ce

安装过程可能需要几分钟,等待完成即可。

5. 配置GitLab

  • 修改外部访问URL:编辑GitLab主配置文件,设置服务器IP或域名(替换your_server_ipyour_domain):

    sudo vim /etc/gitlab/gitlab.rb
    

    找到external_url字段,修改为:

    external_url 'http://your_server_ip'  # 或 'http://your_domain'
    

    若需启用HTTPS,可将http改为https,并后续配置SSL证书。

  • (可选)配置邮件通知:若需使用邮件功能(如密码重置、通知),需编辑/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_email@gmail.com"
    gitlab_rails['smtp_password'] = "your_app_password"  # 使用应用专用密码
    gitlab_rails['smtp_domain'] = "smtp.gmail.com"
    gitlab_rails['smtp_authentication'] = "login"
    gitlab_rails['smtp_enable_starttls_auto'] = true
    gitlab_rails['gitlab_email_from'] = "your_email@gmail.com"
    

    保存后需运行sudo gitlab-ctl reconfigure使配置生效。

6. 启动GitLab服务

执行以下命令重新配置GitLab(应用配置变更)并启动服务:

sudo gitlab-ctl reconfigure
sudo gitlab-ctl start

启动后,可通过以下命令检查服务状态:

sudo gitlab-ctl status

正常状态应显示所有服务(如nginxpostgresqlredis)均为“run”(运行中)。

7. 访问GitLab Web界面

  • 打开浏览器,输入http://your_server_iphttp://your_domain
  • 首次访问时,系统会提示设置root用户的密码(默认无密码,需手动设置)。
  • 设置完成后,使用root账号和刚设置的密码登录GitLab。

8. 后续配置(可选)

  • 设置开机自启动:确保GitLab服务随系统启动:
    sudo systemctl enable gitlab-runsvdir.service
    
  • 修改默认端口:若需更改HTTP/HTTPS端口(如8080),编辑/etc/gitlab/gitlab.rb,添加:
    external_url 'http://your_server_ip:8080'
    
    然后运行sudo gitlab-ctl reconfiguresudo gitlab-ctl restart

常见问题解决

  • 端口冲突:若80或443端口被占用,修改/etc/gitlab/gitlab.rb中的external_url端口,或停止占用服务(如sudo systemctl stop apache2)。
  • 防火墙设置:若使用UFW防火墙,需允许GitLab端口:
    sudo ufw allow 80/tcp
    sudo ufw allow 443/tcp
    sudo ufw allow 22/tcp
    sudo ufw enable
    
  • 内存不足:若服务器内存小于2GB,GitLab可能无法正常运行,建议升级内存或调整GitLab配置(如减少并发数)。

0