原文地址:https://blog.csdn.net/zhushuai662/article/details/79581377
大家常听说Git、Github、Gitlab,很多人对着三个词很懵逼,分别讲一下这三个是什么意思。

  Git是一个开放源码的版本控制软件,还可以把我们的代码push到远程仓库。

  Github是一个网站,提供给用户空间创建git仓库,保存用户的一些数据文档或者代码等。

  Gitlab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来web服务。可以理解为你自己专属的github,功能基本一样,一般公司都会有自己的代码仓库
下面讲一下Gitlab如何在Linux服务器(centos7版本)上搭建。
服务器内存建议4G以上,我的是8g内存,CentOS Linux release 7.4.1708 (Core),执行以下代码一路畅行,
为什么要说这个呢,之前我用国外的512M小霸王服务器,鼓捣了一下午都不可以,解决所有报错后,更是在最后一步服务器死机,彻底GG
1、在系统防火墙中打开http和ssh的出口。
sudo yum install -y curl policycoreutils-python openssh-server
 控制台输出“Complete!”后继续执行命令: 
sudo systemctl enable sshd 

sudo systemctl start sshd
 使sshd服务器自动启动,然后执行: 
sudo firewall-cmd --permanent --add-service=http 
  在执行这句命令如果出现“FirewallD is not running”的提示,则表示防火墙未打开,
  可以执行“sudo systemctl status firewalld”查看防火墙状态,如果防火墙是“dead”状态,
  可以执行“sudo systemctl start firewalld”命令启动防火墙。
  再返回执行上面的添加服务命令,如果出现“success”则执行成功。
  最后执行下面命令reload防火墙。 sudo systemctl reload firewalld
  加入Gitlab的邮件服务,用于接受邮件。执行下面的命令:
sudo yum install postfix sudo systemctl enable postfix 

sudo systemctl start postfix 
  如果不想使用Gitlab提供的邮件服务,可以跳过上面的命令,在安装完Gitlab后,配置自己的邮件服务 

2、安装Gitlab。 执行下面命令安装仓库 
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash  
  接下来安装Gitlab安装包,执行下面的命令:
sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ee 
  “http://gitlab.example.com”可以更改为你想要访问Gitlab实例的url,如果要安装https,需要在安装完成后额外配置。
  比如设置为 "http:172.168.10.251:8088" 搭建完成后就可以通过这个地址访问gitlab
  执行这个命令将会下载比较大的安装包,时间会长一些,可以耐心等待。 3、打开浏览器登录。 第一次登录时,Gitlab会让你修改密码,修改后使用root账户和新密码登录。
    
如果忘记设置初始密码,可以通过后台设置
  
cd /opt/gitlab/bin

sudo gitlab-rails console production   #需要等几秒运行程序

u=User.where(id:)

u.password=''

u.password_confirmation=''

u.save!   #注意有个叹号

如果提示true,则修改管理员密码成功

4、然后 添加用户、创建组、向组中添加用户、创建项目(按照用户或者按照组创建)、然后各用户自己添加ssh公钥到gitlab中,好了,直接push或者clone代码吧,
另外代码仓库默认在 /var/opt/gitlab/git-data 目录

PS:如果不知道ssh公钥,可以参考 https://www.cnblogs.com/lz0925/p/10725010.html
如果出现gitlab的nginx与原Nginx冲突,或者报错如下
[root@ACA83229 nginx]# service nginx restart
Stoping nginx... nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (: No such file or directory)
failed. Use force-quit
Terminating nginx... done
Starting nginx... nginx (pid ) already running.
此时你可以参考 https://www.cnblogs.com/lz0925/p/10879763.html

gitlab搭建和使用的更多相关文章

  1. 用GitLab搭建自己的私有GitHub

    相信很多技术人员都知道有个github造福开发人员的git(分布式版本管理工具)代码管理社区,可以说现在git是开发人员的必备技能之一 本周有个朋友公司需要一个类似github的代码仓库管理系统,本人 ...

  2. Jenkins+Gitlab搭建持续集成(CI)环境

    利用Jenkins+Gitlab搭建持续集成(CI)环境 Permalink: 2013-09-08 22:04:00 by hyhx2008in intern tags: jenkins gitla ...

  3. GitLab搭建详细过程

    一.前提 系统:Centos 6.5 软件版本:gitlab-7.8.4 Selinux:关闭 防火墙规则:先清空(搭建好了后续自己添加相关放行规则) 二.yum源配置和相关依赖包 1.添加epel源 ...

  4. Ansible+Jenkins+Gitlab搭建及配置

    Ansible+Jenkins+Gitlab搭建及配置,已经生产环境使用,运行良好. 主机组文件里面好多ip敏感信息就不写了

  5. gitlab搭建与基本使用【转】

    一.git.github.gitlab的区别Git是版本控制系统,Github是在线的基于Git的代码托管服务.GitHub是2008年由Ruby on Rails编写而成.GitHub同时提供付费账 ...

  6. gitlab搭建之互备模式

    gitlab搭建之互备模式   gitlab搭建之互备模式 前言:gitlab目前默认的部署方式是本地单机部署,为了提高gitlab环境的可靠性和稳定性,必须构建一套互备搭建方案:借助gitolilt ...

  7. GitLab → 搭建私有的版本控制的托管服务平台

    开心一刻 睡着正香,媳妇用力把我晃醒说:“快起来,我爸来了.” 我一下醒了,手脚熟练的把衣服一抱,滚到床底,顺便把鞋也收了进去 媳妇蹲下无奈的说:“快出来!咱俩都结婚半年了.” 我:“对哦,搞习惯了” ...

  8. GitLab → 搭建中常遇的问题与日常维护

    开心一刻 隔壁有一个80多岁的老大爷,昨天在小区的一棵树下发现一条黑色的蛇,冻僵了,大爷善心大发,就把蛇揣在了怀里,想给它一点温暖. 今天一大早看到大爷在树上挂了一个牌子,写到:不准随地大小便! 搭建 ...

  9. gitlab 搭建(基于现有nginx)

    普通搭建请看:gitlab 搭建 一.gitlab搭建 1.添加GitLab镜像源并安装gitlab服务器 wget https://mirrors.tuna.tsinghua.edu.cn/gitl ...

  10. ubuntu12.04 gitlab搭建

    最近在尝试内部搭建gitlab,wiki这些工具...我使用的官网的gitlab-ce包一键安装,自己搭建的ubuntu12.04 server服务器. 分配253地址,放在办公室的小角落. 配置过程 ...

随机推荐

  1. C# 中的Async 和 Await 的用法详解

    众所周知C#提供Async和Await关键字来实现异步编程.在本文中,我们将共同探讨并介绍什么是Async 和 Await,以及如何在C#中使用Async 和 Await. 同样本文的内容也大多是翻译 ...

  2. EscapeAndUnescapeUtil【java模拟js的escape和unescape函数】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 在这里做一个记录,基本代码同参考资料<java模拟js的escape和unescape函数>一样. 效果图     代码 ...

  3. BaiduSpeechDemo【百度语音SDK集成】(基于v3.0.8.1)

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 上一篇集成的是V3.0.7.3版本的SDK<BaiduSpeechDemo[百度语音SDK集成](基于v3.0.7.3)> ...

  4. Session的使用与Session共享问题

    Session的使用与Session共享问题 Session方法 getId():获取sessionId,这个id不一定是数字,比方说它用字符串来表示唯一标识,所以它返回值是String; boole ...

  5. 求求你别用SimpleDateFormat了!

    前言   啊哈哈,标题写的比较随意了,其实呢最近在各种面试以及博客中,SimpleDateFormat出镜率确实是比较高了,为什么?其实聪明的你们肯定知道,那必须是有坑呗,是的,那我们就以案例来分析一 ...

  6. 1.5准备CentOS和Nginx环境「深入浅出ASP.NET Core系列」

    准备CentOS 1.1虚拟机 CentOS的安装这里使用vmware workstation 14来做虚拟机,当然你也可以用Oracle的虚拟机或者不用虚拟机,使用云服务或者使用双系统,不是什么大问 ...

  7. 浅谈基于Linux的Redis环境搭建

    本篇文章主要讲解基于Linux环境的Redis服务搭建,Redis服务配置.客户端访问和防火强配置等技术,适合具有一定Linux基础和Redis基础的读者阅读. 一  Redis服务搭建 1.在根路径 ...

  8. Servlet_note

    2015/8/24 Web项目目录结构:总目录my,中有WEB-INF目录,中有classes.lib两目录和web.xml文件.classes保存编译好的java文件,lib保存库文件,web.xm ...

  9. Java开发笔记(八十七)随机访问文件的读写

    前面介绍了字符流读写文件的两种方式,包括文件字符流和缓存字符流,但是它们的写操作都存在一个问题:不管是write方法还是append方法,都只能从文件开头写入,而不能追加到文件末尾或者在文件中间某个位 ...

  10. centos7 ipaddr 无法查看虚拟机IP解决办法

    原因是: CentOS 7 默认是不启动网卡的 解决办法:https://blog.csdn.net/wxx729418277/article/details/79130649