手把手教你如何在云服务器上安装GitLab
GitLab作为一款优秀的代码托管和持续集成平台,越来越受到开发团队的青睐。本文将详细介绍在主流云服务器上安装GitLab的全过程,包括环境准备、安装配置和常见问题解决。
一、准备工作
1. 选择合适的云服务器配置
- CPU: 建议至少4核
- 内存: 8GB起步,小型团队建议16GB
- 存储: 至少50GB SSD存储空间
- 操作系统: Ubuntu 20.04/22.04 LTS或CentOS 7/8
2. 安全组配置
确保开放以下端口:
- HTTP(80)和HTTPS(443) - 用于Web访问
- SSH(22) - 用于服务器管理
- SMTP(25) - 邮件服务(可选)
二、安装步骤
1. 系统更新
# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
# CentOS/RHEL
sudo yum update -y
2. 安装依赖包
# Ubuntu/Debian
sudo apt install -y curl openssh-server ca-certificates postfix
# CentOS/RHEL
sudo yum install -y curl policycoreutils openssh-server postfix
3. 添加GitLab仓库
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
4. 安装GitLab
# 设置域名(替换yourdomain.com为你的实际域名)
sudo EXTERNAL_URL="http://yourdomain.com" apt install gitlab-ee
三、初始配置
1. 首次访问配置
安装完成后,通过浏览器访问服务器IP或域名,系统会提示设置root账户密码。
2. 修改配置文件
编辑GitLab主配置文件:
sudo nano /etc/gitlab/gitlab.rb
重要配置项:
external_url- GitLab访问地址gitlab_rails['smtp_enable']- 邮件服务设置gitlab_rails['backup_path']- 备份目录
3. 应用配置更改
sudo gitlab-ctl reconfigure
四、安全加固
1. 配置HTTPS
使用Let's Encrypt免费SSL证书:
# 编辑gitlab.rb
letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['[email protected]']
external_url "https://yourdomain.com"
2. 定期备份
# 手动备份
sudo gitlab-rake gitlab:backup:create
# 自动备份(添加到crontab)
0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create
五、常见问题解决
1. 502错误
通常是由于内存不足导致,可以尝试:
- 增加swap空间
- 调整Unicorn worker数量
2. 邮件发送失败
检查SMTP配置是否正确:
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.example.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "[email protected]"
gitlab_rails['smtp_password'] = "your-password"
gitlab_rails['smtp_domain'] = "example.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
通过以上步骤,您已经成功在云服务器上安装并配置了GitLab。建议定期检查官方文档获取更新信息,并保持系统补丁的最新状态。
对于企业级应用,可以考虑使用GitLab官方提供的云服务或高可用方案,以获得更好的性能和可靠性。
