一. 管理员配置 gitlab
1. 登陆 gitlab
等待 docker 容器启动完成后, 登录php
http://localhost:8080git
第一次访问是让咱们修改管理员密码。以下所示redis

设置后管理员密码后,就进入登陆页面,输入用户名 root 和刚才设置的密码就进入了 gitlab 的控制台。以下图所示docker

2. 建立组( group)
gitlab 里面有三类对象:组( group)、项目( project)和用户 (people)。ruby
为了方便管理,咱们应该基于组来建立项目。一个项目就是一个 git 的仓库。基于组建立项目 ,而后将用户设置合适的权限后加入到组里面。这样用户就有了组里面全部项目的对应权限。bash
点击 “Create a group” 连接,以下图所示建立一个“健康医疗开发组” 的组服务器

3. 建立用户(people)
点击 “Add people” 连接,以下图所示建立一个 “yanggch” 的用户ssh

由于尚未配置好邮件服务,因此还不能发送用户初始化密码的邮件。咱们须要编辑用户,手动设置一个密码。以下图所示。若是用户忘记了密码,充值密码也能够在这里进行。gitlab

3. 将用户加入组
为了方便管理,须要将用户加入到对应的组里面。以下图所示,在组管理界面中,点击组的名称,进入组用户设置界面。将刚才建立的用户 “yanggch” 加入到组 “健康医疗开发组”中,而且给他设置为 “Master” 角色。只有 “Master” 或者 “Owner” 角色才能推送 git 的更新。spa

4. 建立项目(project)
增长 gitlab 组的时候,为了让项目让组里面的人都能访问,注意要将项目创建在组之下。以下图所示,在“健康医疗开发组”之下创建了 “redis_util” 的项目。

这样项目建好以后就能够被组里的用户访问了。
二. 客户端访问
1. 设置ssh Key
刚才那种方式经过 http 协议和 gitlab 进行通讯,每次都要输入用户名和密码,很是不方便。用户能够设置经过 ssh 进行交互,将ssh key 加入到用户的 sshkey 设置列表中。
参考“命令访问” 章节进入 git 的 bash 环境。执行下面的命令进入 ssh key 存储目录
cd ~/.ssh
目录中 id_rsa.pub 是 ssh 访问的公钥。若是不存在则执行下面的命令生成
ssh-keygen -t rsa
所有回车后,会生成 id_rsa.pub 文件。
将文件中的内容拷贝到剪贴板。而后经过前面建立的用户名和密码登陆 gitlab 控制台。在下面的界面中,将 id_rsa.pub 文件的内容填入文本框

保存后。再经过 ssh 协议操做 git 仓库,将再也不须要输入用户名和密码。以下所示

2. 推送一次提交
首先配置当前仓库的用户名和用户邮箱配置
cd redis_util git config --local user.name "yanggch" git config --local user.email "yanggch@inspur.com"
而后在 redis_util 目录下加入一个 readme.txt,执行下面的命令提交并将更新推送到 gitlab 远程服务器
#将新文件加入到版本管理 git add readme.txt #提交 git commit -m"第一次提交" #将当前分支 master 推送到远程仓库 git push #以 master 分支为基础创建一个新的 dev 本地分支 git checkout -b dev #将本地仓库分支推送到远程仓库,在远程仓库创建对应的 dev 分支 git push --set-upstream origin dev
到 gitlab 控制台查看 redis_util 的状态。以下图所示

到此,咱们就完成了一个公司级别的 gitlab 服务器的搭建工做。同事们能够在这个上面流畅的进行开发了。