【centOS】搭建公司内网git环境-GitLab 社区版(GitLab CE)
1. 安装必要的依赖
以 CentOS 7 系统为例,安装必要的依赖包:
sudo yum install -y curl policycoreutils openssh-server openssh-clients postfix
sudo systemctl start postfix
sudo systemctl enable postfix
2. 添加 GitLab 仓库
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
3. 安装 GitLab
sudo EXTERNAL_URL="http://192.168.153.139" yum install -y gitlab-ce

将 http://gitlab.example.com 替换为你实际的域名或 IP 地址。

4. 配置和启动 GitLab
sudo gitlab-ctl reconfigure
5. 访问 GitLab
在浏览器中输入你配置的 EXTERNAL_URL,首次访问时会要求你设置管理员密码。设置完成后,使用管理员账号登录即可开始创建项目和管理用户。

6. 常用命令
# 重启
sudo gitlab-ctl restart
# 服务运行状态 查看
sudo gitlab-ctl status
# 配置文件路径
less /etc/gitlab/gitlab.rb
# 可以查看配置的地址信息
# 修改外部访问 URL:如果在安装时指定的 URL 有误或者后续需要更改,可以在 gitlab.rb 文件中找到 external_url 这一行,修改为正确的 URL

7. 防火墙配置
开放 GitLab 使用的端口(默认是 80 端口),允许外部访问:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --reload
# 如果使用的是 HTTPS(端口 443),还需要开放 443 端口:
bash
sudo firewall-cmd --zone=public --add-port=443/tcp --permanent
sudo firewall-cmd --reload
8 .配置邮件服务器
如果需要使用自定义的邮件服务器来发送通知邮件,可以在文件中添加或修改以下配置:
plaintext
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.example.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "your_email@example.com"
gitlab_rails['smtp_password'] = "your_email_password"
gitlab_rails['smtp_domain'] = "example.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['gitlab_email_from'] = 'your_email@example.com'
将上述配置中的信息替换为你实际的邮件服务器信息。
也是修改 /etc/gitlab/gitlab.rb

9. 登录,修改root密码

密码要求,大小写,数字➕字母组成
user.password = ‘Dxw2355661^’
user.password_confirmation = ‘Dxw2355661^’
user.save

true就是成功了!
输入exit退出控制台
浏览器登陆,就会显示成功了!
Welcome to GitLab, Administrator!

相关文章:
【centOS】搭建公司内网git环境-GitLab 社区版(GitLab CE)
1. 安装必要的依赖 以 CentOS 7 系统为例,安装必要的依赖包: sudo yum install -y curl policycoreutils openssh-server openssh-clients postfix sudo systemctl start postfix sudo systemctl enable postfix2. 添加 GitLab 仓库 curl -sS https:/…...
Unity DoTween使用文档
DoTween 使用文档 DoTween 是 Unity 中非常流行的动画补间插件。它通过链式调用方式,让开发者可以快速创建平滑、自然的动画效果。本文将介绍 DoTween 的基础用法、缓动曲线原理(包含常见缓动曲线的数学公式与参数说明)、案例演示以及一些常…...
【办公类-99-01】20250201学具PDF打印会缩小一圈——解决办法:换一个PDF阅读器
背景需求: 2024年1月13日,快要放寒假了,组长拿着我们班的打印好的一叠教案来调整。 “前面周计划下面的家园共育有调整,你自己看批注。” “还有你这个教案部分的模版有问题,太小(窄)了。考虑…...
组合总和II(力扣40)
这道题的难点就在于题目所给的集合中有重复的数字,我们需要进行去重操作。首先明确去重指的是去重哪一部分。注意并不是对递归的集合去重,而是对当前集合的遍历进行去重。这么说可能有点抽象,举个例子:假设集合为1,1,2,3,4&#x…...
基于HTML生成网页有什么优势
在互联网时代,网页是人们获取信息、交流互动的重要窗口,而基于HTML生成网页,是搭建网络大厦的关键。HTML语法简洁直观,标签和属性语义明确,新手也能迅速上手,创建包含基础元素的网页,极大降低了…...
php 接入扣子的 token获取
本身逻辑只是个api,但是官方不提供php的sdk 扎心了老铁,这下php 狗都不用了,主要麻烦的是如何获取access_token,代码如下 protected function get_jwt(): string{$header [alg > RS256,typ > JWT,kid > $this->kid];…...
Redis02 - 持久化
Redis持久化 文章目录 Redis持久化一:持久化简介1:Redis为什么要进行持久化2:Redis持久化的方式 二:RDB持久化介绍1:手动触发RDB2:自动触发RDB3:redis.conf中进行RDB的配置4:RDB优缺…...
【力扣】240.搜索二维矩阵 II
题目 我的代码 class Solution { public:bool searchMatrix(vector<vector<int>>& matrix, int target) {for(int i0;i<matrix.size();i){for(int j0;j<matrix[0].size();j){if(targetmatrix[i][j]){return true;}else if(target<matrix[i][j]){brea…...
RabbitMQ 从入门到精通:从工作模式到集群部署实战(二)
接上篇:《RabbitMQ 从入门到精通:从工作模式到集群部署实战(一)》 链接 文章目录 4.安装RabbitMQ Messaging Topology Operator 裸金属环境部署RabbitMQ部署单实例部署集群 4.安装RabbitMQ Messaging Topology Operator 使用 cer…...
编程AI深度实战:大模型哪个好? Mistral vs Qwen vs Deepseek vs Llama
随着开源 LLM 的发展,越来越多的模型变得专业化,“代码”LLM 变得非常流行。这些 LLM 旨在比其 “常识” 对应物更小,但旨在超越更大的通用模型的编码性能。 这些模型以极低的成本提供大型模型的功能,进一步使本地 LLM 空间民主化…...
11.kafka开启jmx
方式一: 1.进入/opt/kafka_2.13-3.3.2/bin目录 命令: cd /opt/kafka_2.13-3.3.2/bin [root@rhel77 ~]# cd /opt/kafka_2.13-3.3.2/bin [root@rhel77 bin]# pwd /opt/kafka_2.13-3.3.2/bin [root@rhel77 bin]# 2.备份kafka-run-class.sh 命令: cp kafka-run-class.sh …...
基于钉钉API的连接器实现:企业数据集成与自动化管理
文章目录 概要背景与需求钉钉API概述连接器实现小结 概要 在当今数字化时代,企业面临着海量数据的管理与整合挑战。钉钉作为国内广泛使用的办公协作平台,提供了丰富的API接口,支持企业进行数据集成与自动化管理。本文将介绍如何通过钉钉API实…...
JAVA 二维列表的基础操作与异常
在Java中创建二维 ArrayList(即嵌套列表)的方法有多种,下面我将详细介绍常用的几种方式,并分析它们的区别和适用场景。 1. 使用嵌套 ArrayList 创建二维列表 方法一:直接嵌套 ArrayList 这是最常用的方法,…...
将仓库A分支同步到仓库B分支,并且同步commit提交
一、 问题 有一仓库A 和 一仓库B, 需要将仓库A分支a1所有提交同步推送到仓库B分支b1上 二、 解决 2.1、 首先需要仓库A、仓库B的权限, 2.2、将仓库A clone到本地, 进入A目录,并且切换到a1分支 cd A ## A 为A仓库clone到本地代…...
使用java代码操作rabbitMQ收发消息
SpringAMQP 将来我们开发业务功能的时候,肯定不会在控制台收发消息,而是应该基于编程的方式。由于RabbitMQ采用了AMQP协议,因此它具备跨语言的特性。任何语言只要遵循AMQP协议收发消息,都可以与RabbitMQ交互。并且RabbitMQ官方也…...
mysql8安装时提示-缺少Microsoft Visual C++ 2019 x64 redistributable
MySQL8.0安装包mysql-8.0.1-winx64进行安装,提示:This application requires Visual Studio 2019 x64Redistributable, Please install the Redistributable then runthis installer again。出现这个错误是因为我们电脑缺少Microsoft Visual C 这个程序&…...
WindowsServer搭建内网Gitea【中文更方便使用】
特点: 轻量级:占用系统资源少,对服务器硬件要求较低,适合小型企业或团队使用。部署和维护相对简单,即使没有专业的运维人员也能轻松搭建。 功能齐全:具备基本的代码托管功能,如仓库管理、分支管…...
leetcode 907. 子数组的最小值之和
题目如下 数据范围 观察数据范围理论上平方复杂度的算法计算次数逼近1e9还不至于超时,但是由于有mod 1e9导致超时。所以本题不能靠暴力枚举来解决。 所以我们可以思考如何在枚举上面减少计算次数:第一种枚举法:最外层i控制子数组的左边界&…...
WordPress自定义.js文件排序实现方法
在WordPress中,要将插件引用的.js文件放到所有.js文件之后加载,可以通过以下方法实现: 方法一:调整wp_enqueue_script的加载顺序 在插件的主文件中,使用wp_enqueue_script函数加载.js文件时,将$in_footer…...
摄像头模块烟火检测
工作原理 基于图像处理技术:分析视频图像中像素的颜色、纹理、形状等特征。火焰通常具有独特的颜色特征,如红色、橙色等,且边缘呈现不规则形状,还会有闪烁、跳动等动态特征;烟雾则表现为模糊、无固定形状,…...
告别盲目构筑烦恼:Path of Building带来的流放之路角色优化变革
告别盲目构筑烦恼:Path of Building带来的流放之路角色优化变革 【免费下载链接】PathOfBuilding Offline build planner for Path of Exile. 项目地址: https://gitcode.com/gh_mirrors/pat/PathOfBuilding 在《流放之路》的世界里,每一个角色构…...
AI辅助开发:让快马AI听懂你的话,智能定制专属Win11右键菜单
最近在折腾Windows 11的右键菜单,发现新系统的右键菜单虽然简洁,但很多常用功能被折叠到二级菜单里,用起来特别不方便。作为一个开发者,我经常需要快速访问各种工具,于是萌生了自己定制右键菜单的想法。 系统检测模块设…...
不止于循迹:给你的51单片机智能小车加上‘遥控’和‘自动’双模式(附完整Keil工程)
双模智能小车开发实战:蓝牙遥控与红外循迹的完美融合 在创客圈里,51单片机智能小车堪称"电子制作的Hello World",但大多数项目往往止步于单一功能的实现。今天我们要打破常规,打造一款兼具蓝牙遥控与红外自动循迹/避障双…...
飞书文档转Markdown效率低下?Cloud Document Converter实现2分钟精准转换提升75%工作效率
飞书文档转Markdown效率低下?Cloud Document Converter实现2分钟精准转换提升75%工作效率 【免费下载链接】cloud-document-converter Convert Lark Doc to Markdown 项目地址: https://gitcode.com/gh_mirrors/cl/cloud-document-converter 在企业文档管理场…...
UIImage命名检查黑科技:用Runtime拦截空字符串导致的CUICatalog崩溃
UIImage命名检查黑科技:用Runtime拦截空字符串导致的CUICatalog崩溃 在iOS开发中,图片资源管理看似简单,却暗藏玄机。当团队规模扩大、项目复杂度上升时,一个被忽视的空字符串可能引发连锁反应——[UIImage imageNamed:"&quo…...
CPO-RBF分类(优化宽度+中心值+连接权值)可用于故障检测等方向 基于冠豪猪优化算法优化径...
CPO-RBF分类(优化宽度中心值连接权值)可用于故障检测等方向 基于冠豪猪优化算法优化径向基神经网络的数据分类预测,Matlab代码,可直接运行,适合小白新手 程序已经调试好,无需更改代码替换数据集即可运行 需要更换其他算法的都可以…...
CentOS 9 Stream 中 Git 的快速部署与基础配置指南
1. 为什么选择CentOS 9 Stream部署Git? 如果你正在寻找一个稳定且现代化的Linux发行版来搭建开发环境,CentOS 9 Stream绝对是个不错的选择。相比传统的CentOS Linux,Stream版本提供了更频繁的更新,能够让你第一时间用上最新的软件…...
iCalendar文件逆向解析:用Python拆解别人发你的会议邀请(附Outlook兼容性测试)
iCalendar文件逆向解析实战:Python拆解会议邀请的完整指南 收到会议邀请时,那个小小的.ics文件里藏着多少秘密?作为技术人员,我们常常需要从第三方日历文件中提取关键信息、分析重复规则,甚至修复跨时区协作中的时间错…...
别再只画流程图了!用AntV G6-Editor在Angular里搭建一个可交互的作业调度系统
用AntV G6-Editor在Angular中构建企业级作业调度可视化平台 当我们需要在Angular项目中实现复杂的作业调度系统时,传统的流程图工具往往难以满足业务需求。AntV G6-Editor作为专业级可视化编辑框架,提供了从基础绘图到深度定制的完整解决方案。本文将带你…...
如何用OpenPLC Editor实现工业级控制?3大场景实战指南
如何用OpenPLC Editor实现工业级控制?3大场景实战指南 【免费下载链接】OpenPLC_Editor 项目地址: https://gitcode.com/gh_mirrors/ope/OpenPLC_Editor 你是否曾遇到过工业控制编程的困境?传统PLC开发成本高昂、学习曲线陡峭、兼容性差…...
