【DevOps】centos7 下的 gitlab托管服务器的介绍与安装
文章目录
前言
大家好,我是高胜寒,一个在教培行业不忘初心的人,本文是【循序渐进学运维】DevOps工具篇的第4篇文章-【DevOps】centos7下的gitlab介绍与安装
【循序渐进学运维】DevOps工具篇 主要针对的是DevOps常用的工具,比如jenkins,gitlab, docker等工具的结合使用。
gitlab的介绍
gitlab是一个用于仓库管理系统的开源项目,使用git作为代码管理工具,并在此基础上搭建起来的web服务
gitlab 和github的区别
-
gitlab和github都是基于git开发的管理代码的软件
-
官网:
Github的官网: https://github.com/
gitlab的官网: https://gitlab.com/users/sign_in -
github 创建私人项目的时候收费,gitlab新建私人项目不收费
-
gitlab可以内网办公使用,部署在自己的服务器上,适合团队内部开发。 github需要使用公网,容易被恶意攻击者拦截。
gitlab的安装
1. 实验环境:
[aaa@qq.com ~]# cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)
[aaa@qq.com ~]# uname -r
3.10.0-1062.el7.x86_64
[aaa@qq.com ~]# ifconfig |grep inet
inet 192.168.1.17 netmask 255.255.255.0 broadcast 192.168.1.255
2. 安装和配置必要的依赖项
[aaa@qq.com ~]# yum install -y curl policycoreutils-python openssh-server
启动服务
[aaa@qq.comedu-17 ~]# systemctl enable sshd
[aaa@qq.com ~]# systemctl status sshd
## 一般默认已经安装好并已经启动,要不然你怎么连接过去
设置防火墙
[aaa@qq.com ~]# firewall-cmd --permanent --add-service=http
success
[aaa@qq.com ~]# firewall-cmd --permanent --add-service=https
success
[aaa@qq.com ~]# systemctl reload firewalld
[aaa@qq.com ~]#
配置电子邮件,也可以使用外部的SMTP服务器,支持邮件发送
安装成功:
3. 添加yum源
官网提供的yum源
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
4. 更新本地yum缓存,并安装
[aaa@qq.com ~]# yum makecache
[aaa@qq.com ~]# yum install gitlab-ce
如果你的网速特别慢的话,可以会下载失败:
安装成功会有提示:
5. 启动服务并从网页端访问
修改默认访问端口为82
重新加载配置并启动:
[aaa@qq.com ~]# gitlab-ctl reconfigure ## 重新加载配置
[aaa@qq.com ~]# gitlab-ctl start
[aaa@qq.com ~]#
网页端访问:
登陆
6. 添加组,创建用户和项目
创建组: 一个组里面可以有多个项目分支,可以将开发人员添加到组里面进行设置全向,不同的组就是不同的开发项目或者服务模块。
在不同的组里面添加不同的开发人员或者说用户,就可以实现对开发设置权限的管理。
7. 创建组的步骤:
选择 create a group
创建组的名字
组创建完成:
8. 创建项目
项目的名字叫zmedu_web
点击project后可以看到创建的项目
回到我们的组的位置,会看到项目已经在我们的组下面了:
9. 创建用户
选择new user
创建用户:
设置密码
10. 将用户添加到组
回到组的目录下,选择members
选择要添加的用户:
选择 a role permission
这里一共有五种角色:
- guest: 可以创建issue, 发表评论,不能读写版本库
- reporter: 可以克隆代码不能提交,QA,PM可以赋予这个权限
- Developer 可以克隆代码,开发,提交,push, 普通开发可以授予这个权限
- maintainer: 可以创建项目,添加tag,保护分支,添加项目成员,编辑项目,核心开发可以赋予这个权限。
- owner: (最高权限)可以设置项目访问权限,删除项目,迁移项目,管理组成员,开发组组长可以授予这个权限
给gaosh owner权限:
可以看到现在已经有了两个owner权限的用户
10. 测试
我们现在退出当前用户,登陆gaosh用户进行测试
登陆gaosh测试
登陆后要求修改密码:
重新登陆
说明gaosh用户设置成功
总结
本文我们主要讨论了gitlab的介绍,搭建以及使用,后期 我们会结合Jenkins来一起使用。实现最终的CI/CD。
我是高胜寒,一个在教培行业不忘初心的人。欢迎点赞收藏,我们下篇文章再见。
上一篇: 判断变量是何种类型