当前位置:   article > 正文

linux运维进阶:gitlab安装_linux安装gitlab

linux安装gitlab

一、gitlab简介

  1. GitLab 是一个用于仓库管理系统的开源项目。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用。
  2. 常用的网站:
  3. 官网:https://about.gitlab.com/
  4. 国内镜像:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/

二、gitlab环境准备

  1. 安装环境:
  2. 1、 CentOS 6或者7
  3. 22G内存(实验)生产(至少4G)
  4. 3、 安装包:gitlab-ce-10.2.2-ce
  5. 4、 禁用防火墙,关闭selinux
  6. https://about.gitlab.com/installation/#centos-7 # git官网
  7. yum install -y curl policycoreutils-python openssh-server # 安装依赖
  8. cd /home/oldboy/tools
  9. rz -bye gitlab-ce-10.2.2-ce.0.el7.x86_64.rpm # 上传gitlab安装包 下载方式可通过国内清华源gitlab-ce社区版本下载
  10. vim /etc/gitlab/gitlab.rb # gitlab 配置文件
  11. 更改url地址为本机IP地址 external_url 'http://10.0.0.203'
  12. gitlab-ctl reconfigure # 更改配置文件后需重新配置
  13. /opt/gitlab/ # gitlab的程序安装目录
  14. /var/opt/gitlab # gitlab目录数据目录
  15. /var/opt/gitlab/git-dfata # 存放仓库数据
  16. gitlab-ctl status # 查看目前gitlab所有服务运维状态
  17. gitlab-ctl stop # 停止gitlab服务
  18. gitlab-ctl stop nginx # 单独停止某个服务
  19. gitlab-ctl tail # 查看所有服务的日志
  20. 通过浏览器输入IP地址进行访问gitlab
  21. 10.0.0.203
  22. Gitlab的服务构成:
  23. nginx: 静态web服务器
  24. gitlab-workhorse: 轻量级的反向代理服务器
  25. logrotate:日志文件管理工具
  26. postgresql:数据库
  27. redis:缓存数据库
  28. sidekiq:用于在后台执行队列任务(异步执行)。(Ruby)
  29. unicorn:An HTTP server for Rack applications,GitLab Rails应用是托管在这个服务器上面的。(Ruby Web Server,主要使用Ruby编写)

 三、gitlab配置使用

  1. 1、配置外观
  2. 管理区域-外观
  3. 2、关闭自动注册-可根据实际需求操作
  4. 管理区域-设置-关闭自动注册
  5. 3、创建组-用户-项目
  6. 创建组


设置组名称、描述等创建群组

创建用户 

 

 设置密码

 

 4、把用户添加到组里面
管理区域-选择创建的oldboy组进行添加用户、权限给开发人员-增加用户到群组

 

 5、创建仓库
管理区域-创建仓库

  1. 6、登陆dev用户测试是否能看到空的git-test仓库
  2. 7、添加ssh-keys到gitlab 注:一个服务器的key只能添加到一个gitlab服务器上,一个用户可以添加多个key
  3. ssh-keygen -t rsa
  4. 8、添加远程仓库、推送本地代码到远程仓库
  5. git remote add origin git@10.0.0.203:oldboy/get_test.git # 添加远程仓库
  6. git remote rename origin old-origin # 远程 origin 如果已经存在则重新命名或者新添加仓库名称不同
  7. git push -u origin --all # 推送代码到远程仓库
  8. 8、克隆代码到另外一台主机
  9. 如果不做认证会让输入gitlab的密码、我们使用key进行认证
  10. ssh-keygen -t rsa
  11. 把公钥复制到dev用户下进行测试
  12. 然后在克隆代码
  13. git clone git@10.0.0.203:oldboy/get_test.git
  14. 测试推送代码到dev下
  15. git branch dev
  16. git checkout dev
  17. touch dev
  18. git add .
  19. git commit -m "add dev"
  20. git push -u origin dev # 推送dev分支到远程仓库
  21. 提交合并请求进行分支合并到master主分支
  22. 合并后在gitlab服务端master上没有dev、要先进行pull
  23. cd /root/git_data
  24. git pull
  25. 9、设置保护主分支

  1. 测试dev分支推送代码则显示为拒绝,如果还是可以推送请查看配置保护分支选项
  2. [root@web01 get_test]# git checkout master
  3. [root@web01 get_test]# git merge dev
  4. [root@web01 get_test]# git push -u origin master
  5. 10、返回master端测试推送,由于其他分支进行推送,和master端内容不一致,所以无法进行推送,使用git pull把代码拉取到本地,或者git fetch 把代码拉取到本地仓库后进行合并(注意:git pull = git tetch+git merge
声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号