原文地址: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. 2.2Bind建立配置文件和实体的映射「深入浅出ASP.NET Core系列」

    希望给你3-5分钟的碎片化学习,可能是坐地铁.等公交,积少成多,水滴石穿,谢谢关注. 新建MVC项目 这次我们没有使用控制台项目,而是使用mvc来测试. 如下图所示,选择空的项目,建完后,记得把项目设 ...

  2. Spring基础系列-Web开发

    原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/9996902.html SpringBoot基础系列-web开发 概述 web开发就是集成 ...

  3. python类属性用法总结

    属性的定义:python中的属性其实是普通方法的衍生. 操作类属性有三种方法: 1.使用@property装饰器操作类属性. 2.使用类或实例直接操作类属性(例如:obj.name,obj.age=1 ...

  4. 【带着canvas去流浪】(2)绘制折线图

    目录 一. 任务说明 二. 重点提示 三. 示例代码 3.1 一般折线图 3.2 用贝塞尔曲线绘制平滑折线图 四. 大数据量场景 示例代码托管在:https://github.com/dashnowo ...

  5. [翻译]在Windows版或MacOS版的Microsoft Edge上安装一个谷歌浏览器拓展

    原文:Install a Chrome Web Store extension on Microsoft Edge for Windows and MacOS 拓展阅读:What to expect ...

  6. Web项目也能一键打包Android、IOS

    随着移动互联网的不断发展,智能手机配置的不断提高,越来越多的年轻人基本都在使用手机,如微信.支付宝等等.已基本成为一种习惯,坐电梯也好.吃饭也好.开车也好,基本都捧着一个手机在那按来按去,开车就不建议 ...

  7. C# 以函数Action/Func/Task作为方法参数

    以Action.Func.Task作为方法参数,mark一下 以Action为参数 public void TestAction() { //Action参数 ExecuteFunction(() = ...

  8. 九九乘法表-for循环

    1.打印在左上角 #直角在左上方 for i in range(9,0,-1): for j in range(1,10): if j <= i: print("{}*{}={}&qu ...

  9. 【译】.NET Core 3.0 中的新变化

    .NET Core 3.0 是 .NET Core 平台的下一主要版本.本文回顾了 .Net Core 发展历史,并展示了它是如何从基本支持 Web 和数据工作负载的版本 1,发展成为能够运行 Web ...

  10. JavaScript 运行机制 (Event Loop)

    单线程就意味着,所有任务需要排队,前一个任务结束,才会执行后一个任务.如果前一个任务耗时很长,后一个任务就不得不一直等着. 所有任务可以分成两种,一种是同步任务(synchronous),另一种是异步 ...