Linux云服务器上配置GitLab的完整指南
GitLab作为一款强大的开源DevOps平台,已成为现代软件开发团队的首选工具。本文将详细介绍如何在Linux云服务器上配置GitLab,涵盖从服务器准备到最终部署的全过程。
一、服务器准备
在开始安装GitLab前,确保您的云服务器满足以下基本要求:
- 操作系统:Ubuntu 20.04/22.04 LTS 或 CentOS 7/8
- 硬件配置:至少4核CPU、4GB内存和100GB存储空间
- 网络配置:固定IP地址和开放80/443端口
建议使用全新安装的服务器以避免软件冲突。对于生产环境,推荐选择8核CPU、16GB内存以上的配置。
二、安装前准备
1. 更新系统软件包
sudo apt update && sudo apt upgrade -y # Ubuntu/Debian
sudo yum update -y # CentOS/RHEL
2. 安装必要依赖
sudo apt install -y curl openssh-server ca-certificates postfix # Ubuntu
sudo yum install -y curl policycoreutils openssh-server postfix # CentOS
3. 配置防火墙
sudo ufw allow http
sudo ufw allow https
sudo ufw allow ssh
sudo ufw enable
三、安装GitLab
1. 添加GitLab官方仓库
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash # Ubuntu
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash # CentOS
2. 安装GitLab CE
sudo EXTERNAL_URL="https://your-domain.com" apt install gitlab-ce # Ubuntu
sudo EXTERNAL_URL="https://your-domain.com" yum install gitlab-ce # CentOS
注意将your-domain.com替换为您实际的域名或服务器IP地址。
3. 初始化配置
sudo gitlab-ctl reconfigure
四、基本配置与优化
1. 首次访问设置
浏览器访问https://your-domain.com,首次登录需要为root账户设置密码。
2. 配置SMTP邮件服务
编辑/etc/gitlab/gitlab.rb文件,添加以下配置(以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-password"
gitlab_rails['smtp_domain'] = "gmail.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
3. 性能优化
对于小型服务器,可以调整工作进程数量:
unicorn['worker_processes'] = 2 # 默认是CPU核心数+1
sidekiq['concurrency'] = 5 # 默认是25
五、常见问题解决
- 502错误:通常由内存不足导致,尝试增加swap空间
- Let’s Encrypt证书问题:检查服务器时间是否正确,域名解析是否正常
- 备份恢复:使用
sudo gitlab-rake gitlab:backup:create
创建备份
六、总结
通过以上步骤,您已在Linux云服务器上成功部署GitLab。建议定期执行系统更新和备份,并考虑配置监控工具如Prometheus来跟踪服务器性能。GitLab提供了丰富的功能,后续可以根据团队需求逐步配置CI/CD管道、容器注册表等高级功能。