×

【Linux 系列】CentOS-7 下 GitLab 安装部署教程

hqy hqy 发表于2025-01-08 23:10:35 浏览10 评论0

抢沙发发表评论

一、前言

最近在学习 mportant;">Jenkins,需要使用到 gitlab,所以记录下 gitlab 安装过程。

1、本文主要内容

  • GitLab社区版部署

  • GitLab配置禁用创建组权限

  • GitLab配置邮件(SMTP)

  • GitLab常用命令说明

2、GitLab 介绍

GitLab 一个开源的 git 仓库管理平台,方便团队协作开发、管理。在 GitLab 上可以实现完整的 CI(持续集成)、CD(持续发布)流程。而且还提供了免费使用的Plan,以及免费的可以独立部署的社区版本 , 地址

3、本篇环境信息

  • 服务器信息

    • 服务器名称: GitLab

    • 操作系统:Centos 7

    • 硬件配置: 4C8G

    • IP:192.168.0.10

    • 说明:部署 GitLab 社区版

  • 软件

    • 工具 / 环境:GitLab

    • 版本: 社区版 14.4.2

二、准备工作

1、配置清华大学镜像仓库

  • 新建仓库配置文件

使用 vim /etc/yum.repos.d/gitlab-ce.repo 命令,输入以下内容

yaml
[gitlab-ce]name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1
  • 更新 yum缓存

bash
# 重新 yum 编译仓库缓存$ sudo yum makecache# 建立元数据缓存$ sudo yum install gitlab-ce

2、安装基础依赖

bash
# 安装基础依赖$ sudo yum -y install policycoreutils openssh-server openssh-clients postfix# 启动 ssh 服务 & 设置为开机启动$ sudo systemctl enable sshd & sudo systemctl start sshd

3、安装 Postfix

Postfix 是一个邮件服务器,GitLab 发送邮件需要用到

bash
# 安装 postfix$ sudo yum install -y postfix# 启动 postfix 并设置为开机启动$ sudo systemctl enable postfix & sudo systemctl start postfix

4、开放 ssh 以及 http 服务(80 端口)

bash
# 开放 ssh、http 服务$ sudo firewall-cmd --add-service=ssh --permanent & sudo firewall-cmd --add-service=http --permanent# 重载防火墙规则$ sudo firewall-cmd --reload

三、部署过程

本次我们部署的是社区版: gitlab-ce ,如果要部署商业版可以把关键字替换为:gitlab-ee

1、Yum安装GitLab

  • 下载指定版本的 gitlab,可以在清华大学镜像站去选择:地址

bash
$ wget http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.4.2-ce.0.el7.x86_64.rpm
  • 安装 GitLab 社区版

bash
$ rpm -i gitlab-ce-14.4.2-ce.0.el7.x86_64.rpm

安装成功后会看到 gitlab-ce 打印了以下图形



2、配置 GitLab站点 Url和端口号

GitLab 默认的配置文件路径是 /etc/gitlab/gitlab.rb

默认的站点 Url 配置项是:external_url 'http://gitlab.example.com

这里我将 GitLab 站点 Url 修改为 http://127.0.0.1:8000 也可以用域名代替 IP,这里根据自己需求来即可

bash
# 修改配置文件$ sudo vi /etc/gitlab/gitlab.rb# 配置首页地址(大约在第 15 行)$ external_url 'http://127.0.0.1:8000'# 开放端口号$ firewall-cmd --zone=public --add-port=8000/tcp --permanent# 重启防火墙$ systemctl restart firewalld# 查看是否成功$ firewall-cmd --zone=public --query-port=8000/tcp

3、启动并访问GitLab

  • 启动GitLab

bash
# 重新配置并启动$ sudo gitlab-ctl reconfigure# 完成后将会看到如下输出Running handlers:
Running handlers complete
Chef Infra Client finished, 10/776 resources updated in 45 seconds
gitlab Reconfigured!# 启动 gitlab$ gitlab-ctl restart# 查看启动详细信息$ systemctl status gitlab-runsvdir.service
  • 访问 GitLab

将设置的域名 DNS 解析到服务器 IP,或者修改本地 host 将域名指向服务器 IP。访问:http://192.168.0.10:8000/users/sign_in



进入首页,随后进行登录,管理员账号默认用户名是root

初始化密码可以在 GitLab初始化文件查看

bash
$ cat /etc/gitlab/initial_root_password# 复制 Password 后面的内容即可Password: E+EA7WZie9zJbMQ2gwISeVN/We9DBZmYsMFpbjzhYcc=

登录进来进入首页:



四、GitLab 常用配置

1、邮件配置

配置邮箱可以让 GitLab 在发生相应事件的时候进行邮件通知

比如:找回密码、添加邮箱等

bash
# 修改配置文件$ sudo vi /etc/gitlab/gitlab.rb# 邮件配置gitlab_rails['smtp_enable'] = truegitlab_rails['smtp_address'] = 'smtp.163.com'gitlab_rails['smtp_port'] = 465gitlab_rails['smtp_user_name'] = 'yourmail@163.com'gitlab_rails['smtp_password'] = 'yourpasswd'gitlab_rails['smtp_domain'] = 'smtp.163.com'gitlab_rails['smtp_authentication'] = 'login'gitlab_rails['smtp_enable_starttls_auto'] = truegitlab_rails['smtp_tls'] = truegitlab_rails['gitlab_email_enabled'] = truegitlab_rails['gitlab_email_from'] = 'yourmail@163.com'gitlab_rails['gitlab_email_display_name'] = 'Gitlab'# 保存后,重新配置并启动 GitLab$ sudo gitlab-ctl reconfigure

2、禁用创建组权限

GitLab 默认所有的注册用户都可以创建组。但对于团队来说,通常只会给 Leader 相关权限。

虽然可以在用户管理界面取消权限,但毕竟不方便。我们可以通过配置 GitLab 默认禁用创建组权限。

bash
# 修改配置文件$ sudo vi /etc/gitlab/gitlab.rb# 开启 gitlab_rails['gitlab_default_can_create_group'] 选项,并将值设置为 false### GitLab user privileges$ gitlab_rails['gitlab_default_can_create_group'] = false# 保存后,重新配置并启动 GitLab$ sudo gitlab-ctl reconfigure

3、gitlab-ctl 常用命令介绍

命令说明
check-config检查在 gitlab 中是否有任何配置。在指定版本中删除的 rb
deploy-page安装部署页面
diff-config将用户配置与包可用配置进行比较
remove-accounts删除所有用户和组
upgrade升级
service-list查看所有服务
once如果 GitLab 服务停止了就启动服务,如果已启动就不做任何操作
restart重启 GitLab 服务
start如果 GitLab 服务停止了就启动服务,如果已启动就重启服务
stop停止 GitLab 服务
status查看 GitLab 服务状态
reconfigurereconfigure 重新配置 GitLab 并启动

五、备注


打赏

本文链接:https://www.kinber.cn/post/4512.html 转载需授权!

分享到:


推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

 您阅读本篇文章共花了: 

群贤毕至

访客