自动化集成(一) GitLab服务器搭建

目录

一. GitLab概述

二. GitLab下载与安装(Linux)

2.1 GitLab依赖环境配置

2.2 GitLab下载安装

三. GitLab服务配置

3.1 编辑配置文件(url、邮件等服务)

3.2 临时初始密码

3.3 Gitlab相关命令与权限

3.4 Gitlab 用户注册、管理及邮件配置


一. GitLab概述

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。相比GitHub、Gitee来说,GitLab除了可以提供远程仓库访问,其还支持自行搭建/自定义GitLab服务器,从而灵活实现远程仓库控制的内部使用/私有化,一般企业、学校等团队使用较多。

二. GitLab下载与安装(Linux)

官网推荐安装步骤:https://gitlab.cn/install/

2.1 GitLab依赖环境配置

##安装相关依赖
#1.curl 网页请求工具
#    policycoreutils-python gitlab必备环境(policycoreutils貌似包含policycoreutils-python)
#    openssh-server ssh服务端,允许其他远程工具连接本机
#    openssh-client ssh客户端,类似xshell
sudo yum install -y curl policycoreutils policycoreutils-python openssh-server openssh-clients

#2.启动ssh服务、设置为开机自启动
sudo systemctl enable sshd
sudo systemctl start sshd

#3.安装postfix  以发送邮件通知(启动postfix服务、设置为开机自启动)
sudo yum install -y postfix
sudo systemctl enable postfix
sudo systemctl start postfix

#4.开放http服务、重启防火墙(直接关闭也可以)
systemctl status firewalld
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld

#5.安装wget服务(用于从网页下载文件资源)
#    wget指令也是访问请求网页,不过其主要是个专职的下载利器,从网页下载目录资源文件
sudo yum install -y wget

2.2 GitLab下载安装

  • 配置yum源信息:配置GitLab的yum源信息(源仓库服务器地址、包校验信息等),yum在执行时会自动前往yum.repos.d源配置目录,搜索对应安装软件的yum源服务仓库信息,根据信息从服务器上下载安装软件及其对应依赖(服务器存储软件及其所有依赖信息)
  • 自动安装gitlab服务:yum install
# curl指令用于发起Web请求访问(GET/POST),返回页面请求结果(网页信息、下载资源等),-sS表示只在发生错误时输出错误信息
# sudo bash表示自动执行请求的script.rpm.sh脚本,该bash脚本自动在本地配置gitlab-ce的yum源仓库信息,以后gitlab的下载、更新、升级都通过对应的yum软件仓库进行
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash 

yum -y install gitlab-ce #在线下载安装最新版(默认)gitlab-ce(社区版)

三. GitLab服务配置

3.1 编辑配置文件(url、邮件等服务)

vim /etc/gitlab/gitlab.rb #编辑gitlab配置信息
#配置信息包括external_url 等域名和端口信息(默认80端口)

gitlab-ctl reconfigure #重新初始化配置
gitlab-ctl restart #重启服务

3.2 临时初始密码

cat /etc/gitlab/initial_root_password #临时初始root密码存放位置(24h有效)

#拿到这个密码后需要尽快登录web界面进行密码修改即可/更改语言/首页定制

3.3 Gitlab相关命令与权限

gitlab-ctl stop                           #关闭 gitlab
 
gitlab-ctl start                          #启动 gitlab 
 
gitlab-ctl restart                        #重启 gitlab

gitlab-ctl tail                           #查看所有的logs; 按 Ctrl-C 退出         
 
gitlab-ctl tail gitlab-rails              #拉取/var/log/gitlab下子目录的日志
 
gitlab-ctl tail nginx/gitlab_error.log    #拉取某个指定的日志文件
 
gitlab-rake gitlab:check SANITIZE=true --trace #检查gitlab
 
systemctl restart gitlab-runsvdir         #gitlab启动报warning: redis: unable to open supervise/ok: file does not exist
 
GitLab的配置文件:/etc/gitlab/gitlab.rb 	       #可以自定义一些邮件服务等
日志地址:/var/log/gitlab/                      #对应各服务
服务地址:/var/opt/gitlab/                      #对应各服务的主目录 
仓库地址:/var/opt/gitlab/git-data              #记录项目仓库等提交数据

3.4 Gitlab 用户注册、管理及邮件配置

(1)邮箱配置SMTP服务

        配置开启通知邮箱的SMTP服务(以QQ邮箱为例),并记录生成邮箱授权码。

 (2)Gitlab配置注册服务 

        在Gitlab Web平台,通过管理员(Admin Area) - 设置(Setting) - 通用(General) - 注册限制 - 开启注册、确认邮件通知、管理员审批功能。

(3)配置Gitlab通知邮箱

vim /etc/gitlab/gitlab.rb #编辑gitlab配置文件


##1.配置内容
#开启smtp服务
gitlab_rails['smtp_enable'] = true
#邮箱SMTP地址
gitlab_rails['smtp_address'] = "smtp.qq.com"
#邮箱SMTP端口(SSL)
gitlab_rails['smtp_port'] = 465
#smtp用户名 - 通知邮箱
gitlab_rails['smtp_user_name'] = "example@126.com"
#smtp密码 - 邮箱授权码
gitlab_rails['smtp_password'] = "smtp_password"
#邮箱域名
gitlab_rails['smtp_domain'] = "126.com"
#授权方式
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['smtp_pool'] = false
#需要与gitlab_rails['smtp_user_name'] 值一样
gitlab_rails['gitlab_email_from'] = 'example@126.com'
#发送邮件展示的发件人名称
gitlab_rails['gitlab_email_display_name'] = 'Gitlab'

##2.加载配置
gitlab-ctl reconfigure #重新加载配置

##3.测试邮箱通知
gitlab-rails console #进入rails命令窗口
Notify.test_email('xxx@xx.com','Test Title','Welcome Gitlab') #发送测试邮件

(4)新用户注册流程

  • 新用户首页注册提交信息

提示:You have signed up successfully. However, we could not sign you in because your account is awaiting approval from your GitLab administrator.(注册成功但需要管理员审核和验证)

  •  管理员审核用户注册申请

  • 用户进行邮件确认

        管理员审批完成后,用户将会收到一封确认邮件,待确认账户后即可登录成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿阿阿安

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值