Linux下GitLab配置步骤是什么
导读:Linux下GitLab配置步骤 一 环境准备与安装 资源建议:至少2GB RAM(推荐4GB+)、可用存储20GB+、网络可访问外网。 Ubuntu/Debian 依赖与自启: sudo apt-get update &&...
Linux下GitLab配置步骤
一 环境准备与安装
- 资源建议:至少2GB RAM(推荐4GB+)、可用存储20GB+、网络可访问外网。
- Ubuntu/Debian 依赖与自启:
sudo apt-get update & & sudo apt-get install -y curl openssh-server ca-certificates tzdata
sudo systemctl enable --now ssh - RHEL/CentOS 依赖与自启:
sudo yum install -y curl policycoreutils openssh-server postfix
sudo systemctl enable --now sshd
sudo systemctl enable --now postfix - 防火墙放行:
Ubuntu/Debian(ufw):sudo ufw allow 22,80,443/tcp & & sudo ufw enable
RHEL/CentOS(firewalld):sudo firewall-cmd --permanent --add-service=http --add-service=https & & sudo firewall-cmd --reload - 添加软件源并安装 GitLab CE(社区版):
Ubuntu/Debian:
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo apt-get install -y gitlab-ce
RHEL/CentOS:
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install -y gitlab-ce
二 核心配置与首次访问
- 编辑主配置 /etc/gitlab/gitlab.rb,设置外部访问地址(域名或IP):
sudo vim /etc/gitlab/gitlab.rb
external_url ‘http://your_domain_or_ip’ - 使配置生效并启动服务:
sudo gitlab-ctl reconfigure
sudo gitlab-ctl start - 访问与初始化:浏览器打开 http://your_domain_or_ip,按提示设置管理员密码并用 root 登录。
三 邮件通知 SMTP 配置(可选)
- 系统 Postfix 示例(以 SMTP 中继为例):
- 编辑 /etc/postfix/main.cf:
relayhost = [smtp.example.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
smtp_use_tls = yes - 配置账号密码并生效:
echo “[smtp.example.com]:587 your_username:your_password” | sudo tee /etc/postfix/sasl_passwd
sudo postmap /etc/postfix/sasl_passwd
sudo systemctl reload postfix
- 编辑 /etc/postfix/main.cf:
- GitLab 内嵌 SMTP(/etc/gitlab/gitlab.rb):
gitlab_rails[‘smtp_enable’] = true
gitlab_rails[‘smtp_address’] = “smtp.example.com”
gitlab_rails[‘smtp_port’] = 587
gitlab_rails[‘smtp_user_name’] = “your_username”
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_rails[‘gitlab_email_from’] = ‘gitlab@example.com’
应用:sudo gitlab-ctl reconfigure & & sudo gitlab-ctl restart。
四 启用 HTTPS 与常用运维
- Let’s Encrypt 证书(示例域名 example.com):
- 安装 Certbot:
Ubuntu/Debian:sudo apt-get install -y certbot python3-certbot-nginx
RHEL/CentOS:sudo yum install -y certbot - 获取证书(按提示完成验证):sudo certbot certonly --nginx -d example.com
- 配置 GitLab 使用证书(/etc/gitlab/gitlab.rb):
nginx[‘redirect_http_to_https’] = true
nginx[‘ssl_certificate’] = “/etc/letsencrypt/live/example.com/fullchain.pem”
nginx[‘ssl_certificate_key’] = “/etc/letsencrypt/live/example.com/privkey.pem” - 使配置生效:sudo gitlab-ctl reconfigure & & sudo gitlab-ctl restart
- 安装 Certbot:
- 常用运维命令:
查看状态:sudo gitlab-ctl status
重启:sudo gitlab-ctl restart
停止:sudo gitlab-ctl stop
备份:sudo gitlab-backup create(备份文件默认在 /var/opt/gitlab/backups)
恢复:先停止相关服务(如 sudo gitlab-ctl stop unicorn & & sudo gitlab-ctl stop sidekiq),再执行
sudo gitlab-backup restore BACKUP=timestamp_of_backup
五 常见问题与排查
- 无法访问:确认云安全组/本机防火墙已放行80/443,核对 external_url 是否为实际访问地址。
- 502/页面加载慢:执行 sudo gitlab-ctl reconfigure,检查端口占用与磁盘空间(df -h)。
- 邮件发送失败:核对 SMTP 主机、端口、账号与授权码;必要时查看 /var/log/gitlab/gitlab-rails/production.log。
- 权限问题:确保 /etc/gitlab/gitlab.rb 权限为600,属主为 root:root。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux下GitLab配置步骤是什么
本文地址: https://pptw.com/jishu/749021.html
