CentOS 下搭建Gitlab+Gitlab-runner,配置邮件提醒

目录

一、安装Git

二、安装Gitlab

三、配置项目

四、设置邮箱提醒

五、安装配置gitlab-runner

六、Gitlab-ci报错

七、Gitlab中开启Pages功能

一、安装Git

1.下载地址:Index of /pub/software/scm/git/

2.软件版本:git-2.9.5.tar.gz

3.编译Git版本:

4.首先安装依赖(以下都是在root目录下完成): 编译时如果操作系统没有安装gcc,使用yum -y install gcc*

  yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel 
  tar -zxvf git-2.9.5.tar.gz
  cd git-2.9.5/
  make prefix=/usr/local all 
  make prefix=/usr/local install 

5.如果遇到报错,比如:

6.这是因为在CentOS中没有安装gcc,安装gcc即可。

 查看安装情况:

二、安装Gitlab

1.下载地址: https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/

2.软件版本:gitlab-ce-12.3.5-ce.0.el7.x86_64.rpm

3.安装:

rpm -ivh gitlab-ce-12.3.5-ce.0.el7.x86_64.rpm

 4.修改gitlab配置文件制定服务器IP和自定义端口

vim /etc/gitlab/gitlab.rb

5.重置gitlab配置

gitlab-ctl reconfigure

 

 配置时间有大几分钟,偶尔看起来像是卡住了,坚持一会。

温馨提示:linux gitlab-ctl reconfigure报错问题修复 502 

6.启动gitlab

gitlab-ctl start

7.浏览器访问,http://192.168.56.128:8082/,访问失败,解决办法

关闭防火墙:

systemctl status firewalld.service

或者,将gitlab的端口号进行开放:

firewall-cmd --zone=public --add-port=端口号/tcp --permanent

再重启防火墙:

systemctl restart firewalld.service

8.再次访问主页:

9.修改密码:

cd /opt/gitlab/bin

sudo gitlab-rails console -e  production

user = User.where(id: 1).first

user.password = 'secret_pass'

user.password_confirmation = 'secret_pass'

user.save!

exit 

 user 则表示 root 用户,

10.登录gitlab  root/12345678

三、配置项目

1.新建项目

 提示我们可以创建一个分组

 2.建立分组:Atlas-dev

 

 

3.设置中文:

四、设置邮箱提醒

推送时发送电子邮件将每个推送的提交和差异通过电子邮件发送给一个收件人列表。

流水线电子邮件将流水线状态通过电子邮件发送给多个收件人。

1.开启邮箱的SMTP服务:

2.修改gitlab配置

(1)进入配置文件 

vim /etc/gitlab/gitlab.rb

(2)修改配置文件

可以在文件中查找这些内容进行修改,由于这些内容是注释的,也可以直接添加;

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "[email protected]"
gitlab_rails['smtp_password'] = "4513320Why"
gitlab_rails['smtp_domain'] = "exmail.qq.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['gitlab_email_from'] = '[email protected]'

(3)更新设置

gitlab-ctl reconfigure

...

(4)测试邮件服务是否正常

打开gitlab控制台(这一步会花很久时间才能打开) 

gitlab-rails console

Notify.test_email('接收方邮件地址','邮件标题','邮件内容').deliver_now

查看邮箱:

五、安装配置gitlab-runner

一、安装gitlab-runner 

1.下载gitlab-runner 安装包:

https://mirrors.tuna.tsinghua.edu.cn/gitlab-runner/yum/el7-x86_64/gitlab-runner-14.0.0-1.x86_64.rpm

2.安装gitlab-runner

rpm -ivh gitlab-runner-14.0.0-1.x86_64.rpm

3. 查看gitlab-runner状态

4.创建一个gitlab-ci用户

useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash

5.安装,并作为服务启动

sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner

二、注册Runner到Gitlab

Runner可以分布在不同的主机上,同一个主机上也可以有多个Runner。

     gitlabCI与gitlab-runner的关系

1.输入命令:会要求输入gitlab的url和Token.可以在gitlab上查找url和token信息。

sudo gitlab-runner register

2.gitlab上查看url和token信息;这里想区分一下,gitlab可以创建三种runner;

第一种:Specific Runner,指定型。这种Runner只能为指定的工程服务。拥有该工程访问权限的人都能够为该工程创建Specific Runner。它的runner信息在项目-->设置-->CI/CD-->Runner 左侧的:Specific runners

第二种:Shared Runner,共享型。这种Runner是所有工程都能够用的。只有系统管理员能够创建Shared Runner。 它的runner信息,是管理员管理中心-->Runner

第三种:Group runner,群组型。这种是属于同一个群组的项目都可使用,不需要管理员额外的启用授权。先找到我的群组-->设置-->CI/CD-->Runner-->群组Runner

3.创建runner,以群组runner为例。

4.返回gitlab页面查看刚刚创建的group-runner 

 5.返回项目信息中,可以看到这个组runner可用。

6.查看group-runner信息,这些信息可以在gitlab的页面中进行修改。

7.创建一个share-runner

8.查看新建的共享runner

 尤其注意这个标签,很重要,因为在.gitlabyml文件中,写的标签要与这里设置的标签名称一致,否则构建时找不到这个runner了。 

六、Gitlab-ci报错

gitlab-ci-error-during-connect-post-http-docker2375
需要修改gitlab-runner配置文件:config.toml,重启gitlab-runner

vim /etc/gitlab-runner/config.toml
 privileged = true
 volumes = ["/cache", "/var/run/docker.sock:/var/run/docker.sock"]
gitlab-runner restart

七、Gitlab中开启Pages功能

修改配置文件 /etc/gitlab/gitlab.rb,写入域名

pages_external_url "http://域名/"
gitlab_pages['enable'] = true

加载配置后重启gitlab

gitlab-ctl reconfigure
gitlab-ctl start

修改Pages 里面的  Maximum size of pages (MB)   改成1024 

猜你喜欢

转载自blog.csdn.net/xiaodaiwang/article/details/119138227
今日推荐