gitlab添加项目成员_GitLab部署及常用命令

c1ec6bacee16def8f343c0166c30fe7d.png

GitLab社区版是免费的,不但能建立免费的私有仓库而且没有数量上限,参与人员也没有数量限制,还能设置成员的权限,甚至细致到具体某条分支的权限,以及强大的工作流等等。

GitLab很适合中小型非开源项目公司。

49c965495c51bf57d17c175927c22449.png

一、GitLab 简介

GitLab 是一个利用Ruby on Rails 开发的开源版本控制系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。

它拥有与GitHub类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

开源中国代码托管平台 码云就是基于GitLab项目搭建。

GitLab 分为 GitLab Community Edition(CE) 社区版 和 GitLab Enterprise Edition(EE) 专业版。社区版免费,专业版收费,两个版本在功能上的差异对比,可以参考官方对比说明

二、GitLab 安装和配置

安装社区版,GitLab CE 版本:9.2.6

1、GitLab安装

通过GitLab官方提供的Omnibus安装包来安装,相对方便。Omnibus安装包套件整合了大部分的套件(Nginx、ruby on rails、git、redis、postgresql等),再不用额外安装这些软件,减轻了绝大部分安装量。

GitLab官方安装文档:CentOS6.x系统

安装依赖包,并配置postfix服务为GitLab邮件服务

2a65ce333d74e11ea09889d4ee1fcfd9.png

打开HTTP和SSH端口

3e65d5e24a32220f096b154e6dbbf4a0.png

两种安装源

  • 从官方镜像源安装

添加GitLab仓库并安装到服务器上

9ebb30f9ae3fa2fde39501cdc4651979.png

  • 从第三方镜像源安装

官方镜像源在国外,国内安装会很慢,甚至有时因网络问题会无法安装。

国内推荐使用清华大学开源软件镜像源

新建 /etc/yum.repos.d/gitlab-ce.repo,内容为:

8f9de011f0277899f443ae8cdd7f42d1.png

再执行

484422ffe8b39ba55040a2628d8871cb.png

修改配置文件/etc/gitlab/gitlab.rb,绑定域名

c1614e6b0ee03025b5a4178437989071.png


启动GitLab,使得配置生效

fe32c6981489da976e9317d9fd253365.png


在Dnspod中添加解析记录

使用浏览器访问GitLab

首次访问GitLab,系统会让你重新设置管理员的密码,设置成功后会返回登录界面.默认的管理员账号是root,如果你想更改默认管理员账号,请输入上面设置的新密码登录系统后修改帐号名.

GitLab安装细节

cbac89bba256c91490cf2f14a1797bfd.png


GitLab由以下服务构成

  • nginx: 静态web服务器

  • gitlab-shell: 用于处理Git命令和修改authorized keys列表

  • gitlab-workhorse: 轻量级的反向代理服务器

  • logrotate:日志文件管理工具

  • postgresql:数据库

  • redis:缓存数据库

  • sidekiq:用于在后台执行队列任务(异步执行)

  • unicorn:An HTTP server for Rack applications,GitLab Rails应用是托管在这个服务器上面的。

2、配置SMTP服务

如果你不想用服务器自带的postfix服务来发邮件,可以改用SMTP服务。

修改GitLab邮件服务配置(gitlab.rb文件),使用腾讯企业邮箱的SMTP服务器,填写账号和密码

03c26c903a9f86766caa37897ba6f5e9.png


使配置生效

8d8b07881b93b9bfe7851c5504210c69.png


3、GitLab配置HTTPS

GitLab默认是使用HTTP的,可以手动配置为HTTPS

上传SSL证书

创建ssl目录,用于存放SSL证书

117ea8b96b6250a43085eb7acd622c96.png


上传证书并修改证书权限

b7802cc6cdff82226b19d109b7688598.png


修改GitLab的配置文件

修改配置文件/etc/gitlab/gitlab.rb

8c78ca263094e126eb65e66cfca440a3.png


重建配置,使其生效

f83d35da90fe7b6ca64fdfad05cf266b.png


以上操作后,GitLab自带的Nginx服务的配置文件 /var/opt/gitlab/nginx/conf/gitlab-http.conf 会被重新修改:

15af25e3f0715f0829fc9d0998f84513.png


不用额外再配置,HTTP 会自动跳转到 HTTPS 。

开放443端口

在防火墙上开放443端口,用于HTTPS

01ab86e3d66b52cce4a313f63298012c.png


4、修改root用户密码

对于普通用户而言,可通过系统重置密码,接收邮件即可。可是GitLab管理员账号,缺省邮箱 admin@example.com是个不存在的邮箱地址,无法通过邮箱修改密码。官方修改密码文档,根据文档,修改root密码的方法如下:

打开与Rails程序交互的控制台

在root权限下,执行:

0ea09b0daef66f3d4f7252da281f6b10.png


等待一会,直到控制台加载成功。

获取用户信息并修改root用户密码

f42976a002129af4c5d94d5d90f0602e.png


三、GitLab 常用命令

运维管理排查

2dda6bc897c8b9788750d747e159eb00.png


服务管理

4b44d16b4d0c720d6178b0fd9e305bed.png


日志

830ddc04bc7344ed6d735526b41fc57e.png


四、GitLab备份和恢复

备份

GitLab作为公司项目代码的版本管理系统,数据非常重要,必须做好备份。

修改备份目录

GitLab备份的默认目录是 /var/opt/gitlab/backups ,如果想改备份目录,可修改/etc/gitlab/gitlab.rb:

6f88c7babf0b9bb67e8e01b78e0e664c.png

修改配置后,记得:

3bedfa15f460c7b2053cbe5eae9a627f.png

备份命令

a3b665476d3c47c40e91556435dc5d91.png

该命令会在备份目录(默认:/var/opt/gitlab/backups/)下创建一个tar压缩包xxxxxxxx_gitlab_backup.tar,其中开头的xxxxxx是备份创建的时间戳,这个压缩包包括GitLab整个的完整部分。

自动备份

通过任务计划crontab 实现自动备份

9e5bff2acf9676cff0d410380f85ae96.png

备份保留7天

可设置只保留最近7天的备份,编辑配置文件 /etc/gitlab/gitlab.rb

83f1d0f5bdb95158022544f355236137.png

重新加载gitlab配置文件

6b4a6d03f25ffbec3c5fb0fbaab23a68.png

恢复

备份文件:

1f4b5b41a62b6eea096d3a5f73e323f6.png

停止 unicorn 和 sidekiq ,保证数据库没有新的连接,不会有写数据情况。

7b462b13635cafb71060a23223af2ed1.png

随意支持下,一起做好分享

高效的交流圈子知识星球:开源优测  66¥/年 几百个主题了,点击加入,3天内可退款

扫一扫加我微信,注明:入群,加入微信群

215bd18279a74a6364532c84a39bd977.png

扫一扫或长按关注开源优测公众号,原创文章首发平台

74d8e635199cb03030cd2c9a6d656c20.png

在公众号里回复一下关键字获取对应的系列文章

物联网appium大数据测试RobotFrameworkPython
自动驾驶jmeterseleniumjenkins接口测试

顺手点点点右下角的85ee1a8815553bebac3deebd4381856d.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值