在 CentOS 上“集成 GitLab”通常有两种理解:
下面我分别说明,最常见的是第一种:在 CentOS 上安装 GitLab。
sudo yum install -y curl policycoreutils openssh-server perl
sudo systemctl enable sshd
sudo systemctl start sshd
防火墙(如有):
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
社区版用
gitlab-ce
企业版用gitlab-ee
sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ee
如果是本机测试:
sudo EXTERNAL_URL="http://localhost" yum install -y gitlab-ce
sudo gitlab-ctl reconfigure
sudo gitlab-ctl status
访问:
http://<服务器IP>
首次登录账号:
rootcat /etc/gitlab/initial_root_password
编辑:
/etc/gitlab/gitlab.rb
external_url 'https://gitlab.example.com'
nginx['enable'] = false
再用系统 Nginx 反代 8080。
gitlab_rails['ldap_enabled'] = true
gitlab_rails['ldap_servers'] = YAML.load <<-EOS
main:
label: 'LDAP'
host: 'ldap.example.com'
port: 389
uid: 'sAMAccountName'
bind_dn: 'cn=admin,dc=example,dc=com'
password: 'password'
base: 'dc=example,dc=com'
EOS
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash
sudo yum install gitlab-runner
sudo gitlab-runner register
free -h
解决:加 SWAP 或升配置
修改:
unicorn['port'] = 8081
| 目标 | 做法 |
|---|---|
| 装 GitLab | yum 安装 gitlab-ce/ee |
| CI/CD | GitLab Runner / Jenkins |
| 统一认证 | LDAP |
| 高可用 | PostgreSQL + Redis 分离 |
如果你能说清楚:
✅ CentOS 版本
✅ 是想“装 GitLab”还是“接 GitLab”
✅ 和什么系统集成
我可以给你更精确的配置示例。