Git服务器和Git权限管理应用GITLAB安装方法
首先声明,本文使用的服务器是Centos 6.5,在其他版本的LINUX上运行不保证也是一样的效果。
顺便说下 来波点赞 来波收藏和推荐 有什么问题 我会一直关注评论的
想放一张最终图吧

其中主要涉及了LDAP的部署和汉化操作。
好了 进入正题,服务器搭建环节:
第一步:安装GIT
yum install git
这应该没什么问题。
第二部:安装GITLAB
https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/
这是Centos6的安装包地址,如果是其他版本,请自行寻找。
PS:这里有一个坑,centos6.5安装gitlab9.0以上版本会报错,存在有一个依赖包的版本过低,推荐使用7和8的GITLAB版本。
包有了接下来是安装环境了,
sudo yum install curl openssh-server openssh-clients postfix cronie
sudo service postfix start
sudo chkconfig postfix on
sudo lokkit -s http -s ssh
以上操作会开启邮件服务器和必要的安装环境以及开启防火墙的端口。
接下来将安装包导入到linux服务器:
我使用的是xshell的xftp直接传了。这一步就八仙过海吧 ,哈哈
导入进入服务器以后,使用rpm -ivh 安装包
经过一长串的输出以后便安装完成了。
接下来就是编辑gitlab本身的参数和应用LDAP了。
GITLAB本身的配置文件在
/etc/gitlab/gitlab.rb
下面。但是GITLAB本身在
/opt/gitlab/embedded/service/gitlab-rails/
首先备份和编辑配置文件:
cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb.bak
vim /etc/gitlab/gitlab.rb
external_url 'http://10.86.249.40'
gitlab_rails['ldap_enabled']=true
gitlab_rails['ldap_servers']=YAML.load <<-'EOS'
main:
label: 'LDAP'
port:
host: '10.88.7.10'
uid: 'sAMAccountName'
method: 'plain'
base: 'ou=iuser,dc=xxx,dc=com'
bind_dn: 'cn=tacaaa,ou=commuser,dc=xxxx,dc=com'
password: 'xxxxx'
active_directory: true
allow_username_or_email_login: true
block_auto_created_users: false
user_filter: ''
attributes:
username: ['uid','userid','sAMAccountName']
email: ['mail', 'email', 'userprincipalName']
name: 'cn' EOS
此处需要注意的事情有:
所有的空格不能使用tab键补齐,external_url最好使用http://IP地址的形式,不然无法识别。
UID的作用是用于登录的用户名。因此选择AD服务器中适合做用户名的字段,本文选择了sAMAccountName字段作为了UID。
method是密码的交互过程是使用明文还是密纹,plain是明文。
allow_username_or_email_login这一段的话并不是验证邮箱,而是读取用户名到第一个@截止,造成一种可以使用邮箱登录的假象。程序猿这个地方不走心了。
好了配置完了以后,让gitlab使用配置的文件:
gitlab-ctl reconfigure
经过一大串输出以后,如果显示为

如此便是配置成功,如果有报错,则跟着报错修改就OK了。
此时可以通过
gitlab-ctl status
查看各组件的工作状态,并通过 gitlab-ctl stop/start/restart来进行控制
此时查看是否可以通过web页面访问,如果不能访问,检查8080端口是否被其他应用占据如apache等,gitlab使用的是niginx,并非apache。
还有一种情况是extend_url配置错误,请检查。
第三步:汉化GITLAB
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
查看当前gitlab版本。
随后下载带有汉化版的gitlab包
git clone https://coding.net/u/larryli/p/gitlab/git
进入目录下:
sudo git diff origin/8-5-stable..8-5-zh > /tmp/8.5.diff
将8-5修改成自己对应的版本即可。
随后cd进入gitlab目录
cd /opt/gitlab/embedded/service/gitlab-rails/
gitlab-ctl stop
git apply /tmp/8.5.diff
git reconfigure
git reconfigure
查看即可。
Git服务器和Git权限管理应用GITLAB安装方法的更多相关文章
- Windows下搭建Git 服务器: BONOBO GIT SERVER + TortoiseGit
本文将介绍如何在Windows操作系统下搭建Git服务器和客户端.服务器端采用的是Bonobo Git Server,一款用ASP.NET MVC开发的Git源代码管理工具,界面简洁,基于Web方式配 ...
- 搭建Git服务器环境----Git hooks代码自动部署
引言:自己想搭一套git的服务端环境,不想用github码云等.经多方资料整合,实验总结,以下是亲测有效的方式.可用于公司日常开发 一.搭建Git环境 ① 安装 Git Linux 做为服务器端系统, ...
- 不搭建git服务器对git仓库进行局域网内共享多人合作开发项目
有时候在一个临时局域网内没有搭建git服务器,但是又想多人开发一个项目,此时只要每个人电脑安装有git客户端,参考一下方法即可尝试建一个本地化的远程仓库进行多人开发工作. 远程仓库通常只是一个裸仓库( ...
- 详解权限管理(RBAC)的实现方法
在说权限管理前,应该先知道权限管理要有哪些功能: ().用户只能访问,指定的控制器,指定的方法 ().用户可以存在于多个用户组里 ().用户组可以选择,指定的控制器,指定的方法 ().可以添加控制器和 ...
- TortoiseGit 连接Git服务器不用每次输入用户名和密码的方法
每次git push 都要输入用户名和密码. 虽然安全,但在自己电脑上每次都输有些麻烦,如何记住用户名和密码呢? 试了很多方法,找到这个最简单,亲测可行. 当你配置好git后,在C盘C:\Users\ ...
- CentOS搭建Git服务器及权限管理
声明:本教程,仅作为配置的记录,细节不展开,需要您有一点linux的命令基础,仅作为配置参考. 1. 系统环境 系统: Linux:CentOS 7.2 64位 由于CentOS已经内置了OpenSS ...
- git远程仓库创建及权限管理(二)多个项目
本文介绍ubutu下使用gitolite实现多项目的权限管理1.安装git sudo apt-get install git 2.设置Git的user name和email: git config - ...
- Windows下配置Git服务器和客户端 超全
为了配合Redmine使用,特地用Git来做版本控制. Git Candy© 是一个基于ASP.NET MVC的Git分布式版本控制平台,Git Candy的目标是轻松干掉Bonobo,逐渐追赶Git ...
- 架设Git服务器
架设Git服务器项目 Git Candy:http://github.com/Aimeast/GitCandy/ AE大神的作品, Git Candy© 是一个基于ASP.NET MVC的Git分布式 ...
随机推荐
- Firebug的安装与使用
第一步,点击 Firefox 浏览器上的“工具”选项,然后点击“附加软件”,在弹出的小窗口中,点击右下角的“获取扩展”选项,如图 4 所示. 图 4. 获取扩展 第二步,在点击“获取扩展”选项后,打开 ...
- Manasa and Combinatorics
题意: 给定n,求问由2n个字母B,n个字母A构成的字符串中 任意前缀B的个数大于A的个数且任意后缀B的个数大于A的个数的 字符串个数. 解法: 注意到答案不易于直接计算,所以我们考虑应用容斥原理. ...
- 深入Mybatis配置文件
Configuration是干嘛的 Configuration就像是Mybatis的总管,Mybatis的所有配置信息都存放在这里,此外,它还提供了设置这些配置信息的方法.Configuration可 ...
- python 并发编程之IO 模型
首先说一下 IO 发生时涉及的对象和步骤.以read 为例,会经历两个阶段: 1)等待数据准备 2)将数据从内核拷贝到进程中 二,阻塞Io(blocking IO) 在 Linux中 默认情况下所有 ...
- React 从入门到进阶之路(七)
之前的文章我们介绍了 React 表单详解 约束性和非约束性组件 input text checkbox radio select textarea 以及获取表单的内容.接下来我们将介绍 Rea ...
- HTML5标签不兼容ie怎么办?
HTML5的语义化标签以及属性,可以让开发者非常方便地实现清晰的web页面布局,加上CSS3的效果渲染,快速建立丰富灵活的web页面显得非常简单. 比较常用的HTML5的新标签元素有: <hea ...
- 51nod 1011 【完全背包】
完全背包的变形: 这些数字可以取多次,dp[i]代表前 i 物品组成N时的方案数. #include<iostream> #include<cstring> #include& ...
- OPENGL2_基本框架
一些概念 HDC:设备描述句柄(窗口着色描述表句柄),是WINDOWS的一种数据类型,HDC定义的变量指向一块内存,这块内存用来描述一个设备的相关的内容(设备描述表). HGLRC:OpenGL渲染环 ...
- 計蒜客/數正方形(dp)
題目鏈接:https://nanti.jisuanke.com/t/44 題意:中文題誒~ 思路: 用dp[i][j]存儲以(i, j)爲左上定點的最大正方形變長,從右下角網左上角一次計算所有頂點: ...
- js对象 数组Array详解 (参照MDN官网:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find)
一:数组的创建方式: 1.采用直接量创建 var arr = [];//创建一个空数组 var arr2 = [1,2,3];//创建一个有三个元素的数组 2.采用构造函数创建 a.var arr1 ...