目录
一、安装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