CentOS 搭建 GitLab Git
本文目录
- 1. CentOS7 搭建 Gitlab
- 1. 安装 sshd
- 1. 安装 sshd 依赖
- 2. 启动并设置开机自启
- 3. 安装防火墙
- 4. 开启防火墙
- 5. 开放 ssh 以及 http 服务
- 2. 安装 postfix
- 1. 安装 postfix
- 2. 启动并设置开机自启
- 3. 几个补充知识
- 3. 下载并安装 gitlab
- 1. 在线下载安装包
- 2. 安装
- 4. 修改 gitlab 配置
- 5. 重载配置及启动 gitlab
- 6. 把端口添加到防火墙
- 7. 登录 GitLab 页面
- 2. CentOS7 安装 Git
- 1. 安装 Git
- 2. 验证是否安装成功
- 3. 配置基本信息
- 4. 验证配置是否成功
1. CentOS7 搭建 Gitlab
1. 安装 sshd
1. 安装 sshd 依赖
- 输入以下命令:
yum install -y curl policycoreutils-python openssh-server

注:因为我之前已经装过了 sshd 依赖,所以就如上图所示。没装过的耐心等待就好。
2. 启动并设置开机自启
- 依次输入以下命令:
systemctl enable sshd
systemctl start sshd
3. 安装防火墙
- 如果已经安装了防火墙并且已经在运行状态,则可直接进行第 5 步。
那如何判断 CentOS7 是否安装了防火墙呢?这里提供两种方法:
方法 1:执行以下命令来查看防火墙服务的运行状态:
systemctl status firewalld如果返回结果显示防火墙服务正在运行,则表示已安装了防火墙。如果显示防火墙服务处于停止状态或未安装,则表示未安装防火墙。
方法 2:运行以下命令来查看是否安装了防火墙软件包:
rpm -qa | grep firewalld如果返回结果中包含 “firewalld” 字段,则表示已安装防火墙。

- 如果虚拟机中没有安装防火墙,可以输入以下命令进行安装:
yum install firewalld systemd -y
4. 开启防火墙
- 输入以下命令:
service firewalld start
5. 开放 ssh 以及 http 服务
- 依次输入以下命令:
# pemmanent 表示永久生效,若不加 --permanent,系统下次启动后就会失效。
firewall-cmd --add-service=ssh --permanent
firewall-cmd --add-service=http --permanent# 重新加载防火墙列表
firewall-cmd --reload
注:如果关闭防火墙就不需要做以上配置。

2. 安装 postfix
GitLab 需要使用 postfix 来发送邮件。当然,也可以使用 SMTP 服务器。
1. 安装 postfix
- 输入以下命令:
yum install -y postfix
2. 启动并设置开机自启
- 依次输入以下命令:
systemctl enable postfix
systemctl start postfix
3. 几个补充知识
检查系统中是否已经安装 wget,可以输入以下命令查看:
wget -V注:若报系统找不到命令,说明 wget 未安装。可以输入以下命令进行安装:
yum -y install wget

要判断在 CentOS 上是否安装了 Vim 编辑器,可以使用以下方法之一:
方法 1:使用 rpm 命令。输入以下命令:
rpm -qa | grep vim-enhanced如果返回结果中包含 “vim-enhanced” 字段,则表示 Vim 已安装。如果没有返回任何结果,则表示 Vim 未安装。
方法 2:使用 yum 命令。输入以下命令:
yum list installed | grep vim-enhanced如果返回结果中包含 “vim-enhanced” 字段,则表示 Vim 已安装。如果没有返回任何结果,则表示 Vim 未安装。
若发现 Vim 未安装,可以输入以下命令进行安装:
yum install vim -y

3. 下载并安装 gitlab
1. 在线下载安装包
- 输入以下命令:
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm

2. 安装
- 输入以下命令:
rpm -i gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm
注:安装过程需要些时间,如果出现下图,则说明安装成功。

4. 修改 gitlab 配置
- 输入以下命令:
vim /etc/gitlab/gitlab.rb
注:进入编辑器后,按下键键盘的“i”键进入编辑状态,按“Esc”键退出编辑状态。按下“Esc“后输入 :wq 保存并退出。
- 修改 gitlab 访问地址和端口,默认为 80,我这里改为 82:
external_url 'http://192.168.138.129:82'
nginx['listen_port'] = 82

5. 重载配置及启动 gitlab
- 依次输入以下命令:
gitlab-ctl reconfiguregitlab-ctl restart
注:输入第一条命令后耐心等待一段时间。
提示 ok: run: 表示启动成功:

6. 把端口添加到防火墙
- 依次输入以下命令:
firewall-cmd --zone=public --add-port=82/tcp --permanent
firewall-cmd --reload

7. 登录 GitLab 页面
- 登录 GitLab 网页,地址为第 4 步配置的
http://192.168.138.129:82。 - 启动成功后,看到以下修改管理员 root 密码的页面,修改密码后,然后登录即可:

- 修改密码后,跳转到下面的登录界面,填入用户名和密码登录即可(用户名为
root,密码为上一步修改的密码):

- 登录成功后的界面如下:

2. CentOS7 安装 Git
git 提供了一个叫做
git config的工具,专门用来配置或读取相应的工作环境变量。这些环境变量,决定了 git 在各个环节的具体工作方式和行为。这些变量可以存放在以下三个不同的地方:
/etc/gitconfig文件:系统中对所有用户都普遍适用的配置。若使用git config时用--system选项,读写的就是这个文件。~/.gitconfig文件:用户目录下的配置文件只适用于该用户。若使用git config时用--global选项,读写的就是这个文件。- 当前项目的 git 目录中的配置文件(也就是工作目录中的
.git/config文件):这里的配置仅仅针对当前项目有效。每一个级别的配置都会覆盖上层的相同配置,所以.git/config里的配置会覆盖/etc/gitconfig中的同名变量。初次使用 git 需要设置用户名以及邮箱,这将作为当前机器 git 的标识,如果用它来下载远程仓库一些需要登录权限的仓库会要求登录,git 默认使用配置邮箱以及用户名登入,但会要求手动输入密码。
1. 安装 Git
- 输入以下命令:
yum install -y git

注:因为我的虚拟机已经安装了 Git,所以就有上图所示的情况。
2. 验证是否安装成功
- 输入以下命令:
git --version
注:这将显示已安装的 Git 版本信息。

3. 配置基本信息
- 配置 Git 的用户名和邮箱,输入以下命令:
# 将 “Your Name” 替换为你自己的名字
git config --global user.name "Your Name"# 将 “youremail@example.com” 替换为你的邮箱地址
git config --global user.email "youremail@example.com"
4. 验证配置是否成功
- 输入以下命令:
git config --list
注:这将显示设置的用户名和邮箱。
- 配置文件被存储在
~/.gitconfig文件,可以输入以下命令进行查看:
ls -a | grep gitconfig
vim .gitconfig
相关文章:
CentOS 搭建 GitLab Git
本文目录 1. CentOS7 搭建 Gitlab1. 安装 sshd1. 安装 sshd 依赖2. 启动并设置开机自启3. 安装防火墙4. 开启防火墙5. 开放 ssh 以及 http 服务 2. 安装 postfix1. 安装 postfix2. 启动并设置开机自启3. 几个补充知识 3. 下载并安装 gitlab1. 在线下载安装包2. 安装 4. 修改 gi…...
【MTK平台】【wpa_supplicant】关于wpa_supplicant_8/src/p2p/p2p_go_neg.c文件的介绍
本文主要介绍external/wpa_supplicant_8/src/p2p/p2p_go_neg.c文件 这里主要介绍2个方法 1. p2p_connect_send接受来自 p2p.c 文件中调用p2p_connect方法发送的GON Request帧 2. p2p_process_go_neg_resp处理来自GON Response帧的处理流程 先看下p2p_connect_send方法 int p…...
win11安装appium
node安装 node下载网址: Download | Node.js 安装后对node安装包路径进行配置 npm config set prefix “E:\nodejs\node_global” //设置全局包目录 npm config set cache “E:\nodejs\node_cache” //设置缓存目录npm config list //查看npm配置npm install -g appium //安…...
数据科学、统计学、商业分析
数据科学、统计学、商业分析是在各方面有着不同的侧重和方向的领域。 1.专业技能 数据科学(Data Science):数据科学涉及从大量数据中提取有价值的信息、模式和洞察力的领域。它使用多种技术和领域知识,如统计学、机器学习、数据库…...
【多模态】18、ViLD | 通过对视觉和语言知识蒸馏来实现开集目标检测(ICLR2022)
文章目录 一、背景二、方法2.1 对新类别的定位 Localization2.2 使用 cropped regions 进行开放词汇检测2.3 ViLD 三、效果 论文:Open-vocabulary Object Detection via Vision and Language Knowledge Distillation 代码:https://github.com/tensorflo…...
【AGI】Copilot AI编程辅助工具安装教程
1. 基础激活教程 GitHub和OpenAI联合为程序员们送上了编程神器——GitHub Copilot。 但是,Copilot目前不提供公开使用,需要注册账号通过审核,我也提交了申请:这里第一期记录下,开启教程,欢迎大佬们来讨论…...
Mac配置android studio的终端terminal
一共6步 首先打开terminal 1.echo $HOME 2.touch .bash_profile 3.open -e .bash_profile 4.在弹出框中输入 export PATH${PATH}:你电脑sdk的路径/tools:你电脑sdk的路径/platform-tools 5.source .bash_profile 6.adb version 出现类似上图即为成功...
第八次CCF计算机软件能力认证
第一题:最大波动 小明正在利用股票的波动程度来研究股票。 小明拿到了一只股票每天收盘时的价格,他想知道,这只股票连续几天的最大波动值是多少,即在这几天中某天收盘价格与前一天收盘价格之差的绝对值最大是多少。 输入格式 输入…...
MATLAB RANSAC平面拟合 (29)
MATLAB RANSAC平面拟合 (29) 一、算法简介二、函数介绍三、算法实现四、效果展示一、算法简介 将一个平面与一个从内点到平面的最大允许距离的点云相匹配。该函数返回描述平面的几何模型。该函数采用 M- 估计量样本一致性(MSAC)算法求解平面。MSAC 算法是随机样本一致性(RAN…...
铁路关基保护新规:优先采购安全可信的网络产品和服务!
《征求意见稿》第十四条提到:运营者应当加强供应链安全保护,优先采购安全可信的网络产品和服务;采购网络产品和服务影响或者可能影响国家安全的,运营者应当预判网络产品和服务投入使用后可能带来的国家安全风险,按照国…...
Kafka在大数据处理中的应用
Kafka在大数据处理中的应用 一、Kafka简介1. 基础概念2. Kafka的主要功能3. Kafka的特点 二、应用场景1. 数据采集和消费2. 数据存储和持久化3. 实时数据处理和流计算4. 数据通信和协同 三、技术融合1. Kafka与Hadoop生态技术的融合1) 使用Kafka作为Hadoop的数据源2) 使用Hadoo…...
Linux Day03
一、基础命令(在Linux Day02基础上补充) 1.10 find find 搜索路径 -name 文件名 按文件名字搜索 find 搜索路径 -cmin -n 搜索过去n分钟内修改的文件 find 搜索路径 -ctime -n搜索过去n分钟内修改的文件 1)按文件名字 2)按时间 1.11 grep 在文件中过…...
OpenCV 对轮廓进行多边形逼近(Polygon Approximation)
在 OpenCV 中,cv::approxPolyDP 是一个函数,用于对轮廓进行多边形逼近(Polygon Approximation)。它可以将复杂的轮廓逼近为简化的多边形,从而减少轮廓的数据点,使轮廓更加紧凑。 函数原型如下:…...
Docker的数据管理和Dockerfile的指令
Docker的数据管理 一、Docker数据的概念1、数据卷2、数据卷容器 二、端口映射三、容器互联(使用centos镜像)四、Docker 镜像的创建1、基于现有镜像创建(1)首先启动一个镜像,在容器里做修改(2)然…...
[SQL挖掘机] - 交叉连接: cross join
介绍: 交叉连接是一种多表连接方式,它返回两个表的笛卡尔积,即将一个表的每一行与另一个表的每一行进行组合。换句话说,交叉连接会生成一个包含所有可能组合的结果集。 交叉连接的工作原理如下:它会将左表的每一行与右表的每一行…...
Python web实战 | 使用 Django 搭建 Web 应用程序 【干货】
概要 从社交媒体到在线购物,从在线银行到在线医疗,Web 应用程序为人们提供了方便快捷的服务。Web 应用程序已经成为了人们日常生活中不可或缺的一部分。搭建一个高效、稳定、易用的 Web 应用程序并不是一件容易的事情。本文将介绍如何使用 Django 快速搭…...
UE5自定义蓝图节点(二)
继承于UBlueprintAsyncActionBase的类,异步输出节点的实现方法,代码测试正常 .h // Fill out your copyright notice in the Description page of Project Settings.#pragma once#include "CoreMinimal.h" #include "Kismet/BlueprintA…...
Bean容器中的ThreadPoolTaskExecutor需要手动关闭吗
ThreadPoolTaskExecutor 是 Spring 提供的一个方便的线程池实现,用于异步执行任务或处理并发请求。 在使用 ThreadPoolTaskExecutor 作为 Spring Bean 注册到容器中后,Spring 会负责在应用程序关闭时自动关闭所有注册的线程池,所以不需要手动…...
Redis学习路线(3)——Redis的Java客户端
一、如何使用Redis的Java客户端 官方文档: https://redis.io/docs/clients/java/ Java-Redis客户端使用场景Jeids 以Redis命令作为方法名称,学习成本低,简单实现,但是Jedis实例是线程不安全的,多线程环境下需要基于连…...
行车遥控接线图
这个一般只有电工才会用。 主要是 【共线和总电】让人疑惑。 这图实际就是PLC的梯形图。 共电:接主电源。【它串联10A保险丝,再到继电器】 总电:它是所有继电器的公共端。【共电的继电器吸合,共电和总电就直通了。】共电的继电器…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)
HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...
ffmpeg(四):滤镜命令
FFmpeg 的滤镜命令是用于音视频处理中的强大工具,可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下: ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜: ffmpeg…...
高危文件识别的常用算法:原理、应用与企业场景
高危文件识别的常用算法:原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件,如包含恶意代码、敏感数据或欺诈内容的文档,在企业协同办公环境中(如Teams、Google Workspace)尤为重要。结合大模型技术&…...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...
