当前位置: 首页 > news >正文

git操作:在CentOS7上面搭建GitLab服务器

在这篇文章中将要讲解如何在CentOS7上面搭建本地的GitLab服务器。

一、安装并配置必要的依赖关系

首先要在CentOS系统上面安装所需的依赖:ssh、防火墙、postfix(用于邮件通知)、wegt,以下这些命令也会打开系统防火墙中的HTTP和SSH端口访问。

1、安装SSH协议

安装命令:sudo yum install -y curl policycoreutils-python openssh-server

出现如下图所示的界面表示安装成功:

2、设置SSH服务开机自启动

安装命令:sudo systemctl enable sshd

3、启动SSH服务

启动命令:sudo systemctl start sshd

4、安装防火墙

安装命令:yum install firewalld systemd -y

出现如下图所示的界面表示安装成功:

5、开启防火墙

开启命令:service firewalld  start

6、添加HTTP服务到firewalld

安装命令:sudo firewall-cmd --permanent --add-service=http

其中,pemmanent表示永久生效,若不加--permanent系统下次启动后就会失效。

7、重启防火墙

重启命令:sudo systemctl reload firewalld

8、安装Postfix以发送邮件

安装命令:sudo yum install postfix

9、将postfix服务设置成开机自启动

命令:sudo systemctl enable postfix

10、启动postfix

启动命令:sudo systemctl start postfix

11、安装wget,用于从外网上下载插件

安装命令:sudo  yum -y install wget

出现如下的界面表示安装成功:

12、安装vim编辑器

安装命令:sudo yum install vim -y

出现如下界面表示安装成功:

二、添加GitLab镜像源并安装gitlab服务器

1、添加gitlab镜像

命令:wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.5.7-ce.0.el7.x86_64.rpm

出现下图所示的界面表示已经下载完成,然后就可以安装Gitlab了:

2、安装Gitlab

命令:rpm -i gitlab-ce-10.5.7-ce.0.el7.x86_64.rpm

安装过程会需要一些时间,如果出现下图所示的界面,则表示Gitlab安装成功:

3、修改gitlab配置文件指定服务器ip和自定义端口:

命令:vim  /etc/gitlab/gitlab.rb

然后进入编辑器,这是输入小写的“i”进入编辑模式:

按Esc键退出编辑模式,然后输入命令“:wq”保存并退出。

4、将9090端口添加到防火墙中

命令: firewall-cmd --zone=public --add-port=9090/tcp --permanent 

5、重启防火墙

重启命令:sudo systemctl reload firewalld

6、重置gitlab

命令:gitlab-ctl reconfigure

重置过程会需要一段时间:

出现如下的界面表示重置成功:

7、启动gitlab

命令:gitlab-ctl restart

出现如下界面表示启动成功:

8、访问Gitlab页面

如果没有设置域名,在浏览器里面直接输入服务器IP和指定的端口号就可以进行访问,第一次登陆的时候会默认进入修改密码界面:

相关文章:

  • windows下redis 开机自启动
  • SpringBoot系列: Actuator监控
  • JavaScript常用八种继承方案
  • 20172313 2018-2019-1 《程序设计与数据结构》课堂测试修改报告
  • 使用fiddler抓取手机上的HTTPS包
  • 云栖科技评论第76期:车用半导体混战 中国怎么战?
  • 兼容性总结
  • 运维技术(一)用docker安装elk之CentOS7.4
  • 时间复杂度分析经典问题——最大子序列和
  • Android Studio踩过的坑
  • 细说Redis(一)之 Redis的数据结构与应用场景
  • Python变量的相互转换
  • 2018.10.23-dtoi-1770不设找零No Change (nochange)
  • 【NOIP2017D2T3】列队
  • Algs4-1.3.13判断正确的出队次序
  • 【MySQL经典案例分析】 Waiting for table metadata lock
  • bearychat的java client
  • Iterator 和 for...of 循环
  • Js基础——数据类型之Null和Undefined
  • k8s 面向应用开发者的基础命令
  • magento 货币换算
  • Map集合、散列表、红黑树介绍
  • mysql 5.6 原生Online DDL解析
  • MySQL主从复制读写分离及奇怪的问题
  • oschina
  • php的插入排序,通过双层for循环
  • python大佬养成计划----difflib模块
  • 闭包,sync使用细节
  • 大数据与云计算学习:数据分析(二)
  • 分享几个不错的工具
  • 分享一份非常强势的Android面试题
  • 紧急通知:《观止-微软》请在经管柜购买!
  • 前端代码风格自动化系列(二)之Commitlint
  • 实现简单的正则表达式引擎
  • 要让cordova项目适配iphoneX + ios11.4,总共要几步?三步
  • 7行Python代码的人脸识别
  • ionic异常记录
  • 基于django的视频点播网站开发-step3-注册登录功能 ...
  • ![CDATA[ ]] 是什么东东
  • $.ajax中的eval及dataType
  • ( 10 )MySQL中的外键
  • (1/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (附源码)spring boot公选课在线选课系统 毕业设计 142011
  • (转)利用ant在Mac 下自动化打包签名Android程序
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .Net MVC + EF搭建学生管理系统
  • .NET面试题(二)
  • .Net下的签名与混淆
  • .NET运行机制
  • .net最好用的JSON类Newtonsoft.Json获取多级数据SelectToken
  • [2016.7 day.5] T2
  • [C#]winform利用seetaface6实现C#人脸检测活体检测口罩检测年龄预测性别判断眼睛状态检测
  • [ChromeApp]指南!让你的谷歌浏览器好用十倍!