GitLab社区版在CentOS上的部署与配置指南
1. 配置YUM软件源
创建GitLab的YUM仓库文件:
sudo vim /etc/yum.repos.d/gitlab-ce.repo
填入以下内容(使用清华大学镜像源加速下载):
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1
更新本地缓存:
sudo yum makecache
2. 安装GitLab社区版
sudo yum install gitlab-ce
安装完成后会看到类似提示信息,要求设置 external_url。
3. 核心管理命令
sudo gitlab-ctl start # 启动所有组件
sudo gitlab-ctl stop # 停止所有组件
sudo gitlab-ctl restart # 重启所有组件
sudo gitlab-ctl status # 查看运行状态
sudo gitlab-ctl reconfigure # 应用配置变更
sudo gitlab-ctl tail # 查看日志
gitlab-rake gitlab:check SANITIZE=true --trace # 系统健康检查
4. 首次启动与初始化
sudo gitlab-ctl reconfigure
成功后输出如下:
Running handlers:
Running handlers complete
Chef Client finished, 476/1268 resources updated in 03 minutes 11 seconds
gitlab Reconfigured!
sudo gitlab-ctl start
首次通过浏览器访问 localhost,设置root用户密码(本次设置为 1qaz@WSX)。
5. 配置文件修改
主配置文件位于 /etc/gitlab/gitlab.rb。配置文档参考:https://docs.gitlab.com.cn/omnibus/
5.1 修改外部访问URL
将以下URL替换为实际IP或域名:
external_url 'http://10.23.65.185'
执行生效:
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
5.2 配置SMTP邮件服务
关闭SSL的简单配置示例:
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "mail.xxxx.com"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_user_name'] = "abc"
gitlab_rails['smtp_password'] = "xxxx"
gitlab_rails['smtp_domain'] = "xxx.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = false
gitlab_rails['smtp_tls'] = false
gitlab_rails['smtp_ssl'] = false
gitlab_rails['smtp_force_ssl'] = false
gitlab_rails['smtp_openssl_verify_mode'] = 'none'
遇到 Net::SMTPFatalError (553 Mail from must equal authorized user) 错误时,需要添加发件人地址匹配认证账号:
gitlab_rails['gitlab_email_from'] = "abc@xxxx.com"
6. 客户端工具配置
6.1 Linux下安装Git
sudo yum install git
6.2 Windows下配置
- 下载Git for Windows并安装,配置环境变量
- 在IntelliJ IDEA中集成Git
- Eclipse中Git插件配置(与GitHub连接正常,GitLab连接可能报错)
生成SSH密钥对:
ssh-keygen -t rsa -C g1
默认密钥路径:C:\Users\当前用户\.ssh。将 id_rsa.pub 内容粘贴至GitLab用户设置中的SSH密钥栏。