CentOS7中搭建GitLab踩坑实录
今晚闲来无事,尝试了下自己搭建一台git服务器,很多人可能不明白平时自己随手就可以提交代码,为什么还要自己搭建服务器呢?首先你有没有考虑过你是怎么能把代码提交上去的?如果公司突然有一天需要你来负责搭建一台git服务器,你要怎么办?git的功能十分强大,只搭建服务器已经是最简单的工作了,后面还得考虑权限如何设置,如何利用git进行CICD……
一、安装虚拟机Linux
现实开发中,服务器基本都是Linux系统,很少有Windows,而本人服务器系统版本为:Centos 7 64位 。
服务器选择:
- 本地虚拟机 「推荐使用, 自己装系统,比较繁琐,只要电脑内存足够,可更具需要调整内存,穷人必备」
- 云主机 「GitLab 至少要 3G 以上内存, 很占用内存,emmmm~ 不便宜」
安装的过程就不多啰嗦了,安装好了以后需要设置几个非常重要的配置:
1.先在VMware Workstation进入编辑按钮设置,选择虚拟网络编辑器
2.然后选择NAT模式

3.选择虚拟机,点击设置

4、进入虚拟机,进入到网络配置文件
vi /etc/sysconfig/network-scripts/ifcfg-ens33
将ONBOOT=no 设置成为ONBOOT=yes,同时将ip地址设置为固定ip,防止每次重启后改变
#添加如下配置 ONBOOT="yes"
IPADDR=192.168.253.5
NETMASK=255.255.255.0
GATEWAY=192.168.253.2
DNS1=8.8.8.8
DNS2=114.114.114.114
PEERDNS=no
5、然后重启网卡
service network restart
踩坑点:此时,虚拟机就设置完毕,但是如果你发现你的虚拟机依旧无法访问网络,那么就要设置本地机器网络为固定ip,操作如下:
(1)找到本地网络适配器中,虚拟机所对应的NAT网络,

(2)右击--属性--ipv4属性,选择使用下面的ip地址,此处的ip设置一定不要和虚拟机的ip地址一样,否则无法访问网络哦,切记切记!!!
网关要和ip在同一个网段

上述设置完毕以后,你的虚拟机的就设置好了,也可以访问网络了!
二、安装Xshell工具
安装这个工具本身没什么问题,有问题的大家可以自行百度,问题在于本人犯的一个错误就是控制面板那里设置的ip地址和centOS的ipAddress(即用ifconfig -a查出来的ip地址)设置成一样了,导致一直都没有连接成功,这个大家一定要避坑,否则连接不上。
三、安装gitlab
安装gitlab有几种方式:docker的方式安装,另一种就是直接安装在Linux,两种方式各有利弊,docker的话就不用管端口冲突之类的问题,所以我选择直接安装到Linux,因为我的这台机器只用来做git。
一般都是使用如下命令:
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-13.1.2-ce.0.el7.x86_64.rpm
1.但是由于我的机器上无法解析该地址(如果无法解析,可以试试安装一下证书:yum install -y ca-certificates),所以我选择在本地下载git后上传到Linux,就是在本地浏览器直接访问:
https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-13.1.2-ce.0.el7.x86_64.rpm
下载好了以后,使用winscp直接吧下载好的gitlab Linux安装文件上传到虚拟机上去
2.在Xshell上用命令进入到保存gitlab文件的文件夹内,我的在usr/local/gitlab 文件夹中
#进入到gitlab的安装目录
cd usr/local/gitlab
#执行如下命令安装ssh
yum -y install curl policycoreutils openssh-server openssh-clients
3.出现Complete即安装完成
4.执行如下命令进行gitlab的安装
rpm -i gitlab-ce-12.2.1-ce.0.el7.x86_64.rpm #出现如下界面需等待

安装成功!!!

5.执行如下命令,打开配置文件,并将地址修改为你的虚拟机地址
vi /etc/gitlab/gitlab.rb

重点来了:由于在上文中防火墙已开启,则需要把相应的端口8600放开。
firewall-cmd --zone=public --add-port=8600/tcp --permanent
1.使gitlab的配置文件生效,这一步时间较长,耐心等待
sudo gitlab-ctl reconfigure
2.重启gitlab
sudo gitlab-ctl restart
此时,在浏览器中输入gitlab的ip和端口号,无法访问!!!!
重中之重:
#linux系统开放8600端口
cd /etc/sysconfig ls -l
没有查看到iptables文件,但存在ip6tables-config和iptables-config,本文中的linux为CentOS 7.6 ,CentOS 7默认没有了iptables文件

安装iptables-services
yum install iptables-services
启动iptables
systemctl enable iptables systemctl start iptables
在iptables中配置开放8600端口
vim /etc/sysconfig/iptables
把这句话添加配置文件中:-A INPUT -m state --state NEW -m tcp -p tcp --dport 8600 -j ACCEPT

重启防火墙
service iptables restartj
结束!!!!
到此gitlab就搭建完毕了,浏览器中输入:http://192.168.253.5:8600

CentOS7中搭建GitLab踩坑实录的更多相关文章
- Linux系统搭建GitLab---阿里云Centos7搭建Gitlab踩坑
一.简介 GitLab,是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目安装. 它拥有与GitHub类似的功能,能 ...
- centos7 中搭建gitlab
1.在virtual box中新建一个虚拟机 2.gitlab ce(community版本)地址:https://about.gitlab.com/installation/#centos-7?ve ...
- 后端路由项目由 gulp 改为 webpack 的踩坑实录
前言 公司有个后端路由的项目是用 gulp 作为前端自动化构建工具,最近学习了一下 webpack,深感其强大,一狠心将其改成了 webpack 构建,以下是踩坑实录. gulp 先来说说原来的架构. ...
- JAVA实用案例之文件导出(JasperReport踩坑实录)
写在最前面 想想来新公司也快五个月了,恍惚一瞬间. 翻了翻博客,因为太忙,也有将近五个多月没认真总结过了. 正好趁着今天老婆出门团建的机会,记录下最近这段时间遇到的大坑-JasperReport. 六 ...
- CentOS7.4安装MySQL踩坑记录
CentOS7.4安装MySQL踩坑记录 time: 2018.3.19 CentOS7.4安装MySQL时网上的文档虽然多但是不靠谱的也多, 可能因为版本与时间的问题, 所以记录下自己踩坑的过程, ...
- ffmpeg 踩坑实录 添加实时水印(二)
一.背景介绍 最近领导要求做一个视频录制的相关项目.其中,需要对视频文件进行添加 实时时间水印.于是,我想到了使用之前的ffmpeg来做. 二.ffmpeg实际操作 首先把需要添加水印的视频文件,上传 ...
- JasperReport报表导出踩坑实录
写在最前面 翻了翻博客,因为太忙,已经好久没认真总结过了. 正好趁着今天老婆出门团建的机会,记录下最近这段时间遇到的大坑-JasperReport. 六月份的时候写过一篇利用poi文件导入导出的小De ...
- centos7中搭建ftp服务
博客搬家: centos7中搭建ftp服务 最近想和同学共享一些文件资源,于是在实验室服务器上搭建个ftp服务,本博客记录一下配置的流程.过程基本是参照别人的方法来做的,博客也是在别人博客基础上修改的 ...
- centos 7( linux )下搭建elasticsearch踩坑记
原文:https://blog.csdn.net/an88411980/article/details/83150380 概述 公司最近在做全文检索的项目,发现elasticsearch踩了不少 ...
- nginx搭建网站踩坑经历
为了更好的阅读体验,请访问我的个人博客 前言 早上刷抖音刷到一个只需要三步的nginx搭建教程(视频地址),觉得有些离谱,跟着复现了一遍,果然很多地方不严谨并且省略了大量步骤,对于很多不了解linux ...
随机推荐
- WPF|分享一个登录界面设计
分享一个登录界面,先看效果图: 准备 文中使用到了一些图标: 我们可以从 iconfont免费下载: 代码简单说明 请随手创建一个WPF项目(.NET Framework..NET 5\6\7皆可), ...
- 01-Shell脚本入门
1.Shell介绍 1.1 疑问 linux系统是如何操作计算机硬件CPU,内存,磁盘,显示器等? 答: 使用linux的内核操作计算机的硬件 1.2 Shell介绍 通过编写Shell命令发送给li ...
- 【java】 向上转型的运用
应用 :求面积 1,抽象类 Geometry . public abstract class Geometry { public abstract double getArea(); } 2,矩形 ...
- 【面试题精讲】说一说springboot加载配置文件优先级
有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top 首发博客地址 文章更新计划 系列文章地址 Spring Boot 加载配置文 ...
- 极简版本Clickhouse监控步骤
极简版本Clickhouse监控步骤 背景 昨天处理了 鲲鹏920 上面的Clickhouse 的基于Docker的安装与部署 今天想着能够继续处理一下 增加监控信息 能够实现对clickhouse使 ...
- [转帖]003、体系结构之TiKV持久化
TiKV架构和作用 数据持久化 分布式一致性 MVCC 分布式事务 Coprocessor coprocessor : 协同处理器. 可以将一些SQL计算交给TiKV处理.不需要将TiKV所有数据通过 ...
- [转帖]TiKV & TiFlash 加速复杂业务查询丨TiFlash 应用实践
返回全部 边城元元案例实践2022-08-02 复杂业务查询对于传统的关系型数据库来说是一种考验,而通过 TiKV 行存与 TiFlash 的列存结合使用就能很好地应对.本文根据 TUG 用户边城元元 ...
- [转帖]使用S3F3在Linux实例上挂载Bucket
https://docs.jdcloud.com/cn/object-storage-service/s3fs S3F3是基于FUSE的文件系统,允许Linux 挂载Bucket在本地文件系统,S3f ...
- [转帖]Linux终端:用cat命令查看不可见字符
https://developer.aliyun.com/article/80607 printf 'testing\012\011\011testing\014\010\012more testin ...
- [转帖]配置logback上报日志到Skywalking
https://zhuanlan.zhihu.com/p/506119895 配置logback上报日志到Skywalking 配置logback上报日志到skywalking需要引入toolkit依 ...

