【GitLab私有仓库】在Linux上用Gitlab搭建自己的私有库并配置cpolar内网穿透

简介: Gitlab是被广泛使用的基于git的开源代码管理平台, 基于Ruby on Rails构建, 主要针对软件开发过程中产生的代码和文档进行管理, Gitlab主要针对group和project两个维度进行代码和文档管理, 其中group是群组, project是工程项目, 一个group可以管理多个project, 可以理解为一个群组中有多项软件开发任务, 而一个project中可能包含多个branch, 意为每个项目中有多个分支, 分支间相互独立, 不同分支可以进行归并。


文章目录

前言

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。


Gitlab是被广泛使用的基于git的开源代码管理平台, 基于Ruby on Rails构建, 主要针对软件开发过程中产生的代码和文档进行管理, Gitlab主要针对group和project两个维度进行代码和文档管理, 其中group是群组, project是工程项目, 一个group可以管理多个project, 可以理解为一个群组中有多项软件开发任务, 而一个project中可能包含多个branch, 意为每个项目中有多个分支, 分支间相互独立, 不同分支可以进行归并。


下面我们通过在Linux centOS8 中搭建GitLab私有仓库并且结合Cpolar内网穿透工具,实现在公网环境下也可以访问私有仓库Gitlab。


1. 下载Gitlab

在系统中创建一个目录,名字叫GitLab,存放下载的安装包

88766fa1e60ced6b6530c3205a7bd71.png


进入创建的目录

9a31f2da08a06df67592a156e7e9c97.png

下载Gitlab安装包,等待下载完成

a0591dd6707124dd0063b536ae17a47.png



2. 安装Gitlab

下载成功后,开始安装Gitlab,首先安装一个工具包,时间很长,等待安装完成:


6f9a404d8d65691d84a6f78d50d00fe.png


然后安装Gitlab,进去我们上面创建的/usr/local/gitlab目录下执行:


11c826014937941b4ce02e48fb93bce.png


安装完成后,更新配置,稍微需要点时间,耐心等待一下,完成后,我们可以看到用户名和密码

5273d65012f8b4fc795245948c37439.png

以下信息我们可以看到用户名和密码,用户名为:root,密码需要单独查看




上面那个路径就是密码路径,查看密码:

b72bda8a4c3d6e96ac897cb2f21171a.png



3. 启动Gitlab

测试启动,没有出错表示成功


5a55117e6561f3094cf52e5a20be8d6.png


然后修改访问地址,编辑Gitlab配置文件,


b821c75b4c10f749c9d9fec369a9798.png


把external_url的值换成http://127.0.0.1:8088,端口号可以自己指定,这里指定8088,然后保存



修改完后重新加载配置文件

f9013d73e758789e6665e64d292552d.png


然后重新启动Gitlab

f1eff87029510ec027009f8ea8320a1.png


如果有防火墙,添加防火墙端口:8088

f188ca09d7961c91a6ae49c96018048.png


然后打开浏览器,输入Linux 局域网ip+8088,即可访问成功



输入上面的用户名:root 和上面查看的密码即可登录成功啦



4. 安装cpolar

上面我们在本地Linux虚拟机安装了Gitlab,下面我们安装cpolar内网传统工具,通过cpolar的http公网地址,我们可以很容易远程也可以访问GitLab,而无需自己注册域名.下面是安装cpolar步骤


使用一键脚本安装命令

a0d021c6300fce3552afdbd9e0e544e.png

token认证

登录cpolar官网后台,点击左侧的验证,查看自己的认证token,之后将token贴在命令行里:


1e346ee44e555c67688c4992872e356.png

向系统添加服务,将cpolar配置为开机自启

8b2f6d850340944f513a856ef4bdc70.png

启动cpolar服务

9c73a3c70171238bb9fce64f96757f0.png

5. 创建隧道配置访问地址

成功启动cpolar服务后,我们在浏览器上访问Linux局域网ip地址+9200端口,登录cpolar web UI管理界面。


登录成功后,点击左侧仪表盘的隧道管理——创建隧道,创建一个http协议的隧道指向上面设置的8088端口:


隧道名称:可自定义,注意不要与已有的隧道名称重复

协议:http

本地地址:8088

域名类型:免费选择随机域名

地区:选择China VIP

点击创建



然后打开在线隧道列表,查看并且复制公网地址



然后打开浏览器,输入公网地址,即可访问成功



6. 固定GitLab访问地址

由于刚刚创建隧道使用的是随机临时地址,该地址会在24小时内发生变化,为了长期远程访问,我们接下来将这个公网地址配置为固定的。


6.1 保留二级子域名

需升级至基础套餐或以上才支持配置二级子域名


登录cpolar官网后台,点击左侧仪表盘的预留,找到保留二级子域名,为http隧道保留一个二级子域名。


  • 地区:选择服务器地区
  • 名称:填写您想要保留的二级子域名(可自定义)
  • 描述:即备注,可自定义填写


本例保留一个名称为gitlabTest的二级子域名。子域名保留成功后,我们将子域名复制下来,接下来需要将其配置到隧道中去。



6.2 配置二级子域名

登录cpolar web ui管理界面。点击左侧仪表盘的隧道管理——隧道列表,找到需要配置二级子域名的隧道,点击右侧的编辑



修改隧道信息,将二级子域名配置到隧道中:


域名类型:改为选择二级子域名

Sub Domain:填写我们刚刚所保留的二级子域名(本例为gitlabTest)

修改完成后,点击更新



隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到隧道的公网地址,已经更新为二级子域名了,将公网地址复制下来。



7. 测试访问二级子域名

打开浏览器,我们来测试一下访问配置成功的二级子域名,测试成功,可以正常访问。现在,我们全网唯一的私有二级子域名,就创建好了。 而且这个地址也不会再随机变化,他是固定不变的,只要保持隧道在线,我们在外就可以通过这个公网地址,随时随地远程访问,无需公网IP,也不用设置路由器。




相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
相关文章
|
2月前
|
JSON API 开发工具
gitlab如何实现批量clone仓库
在Windows环境下,通过GitLab Group ID获取项目URL的步骤概要: 1. 使用API `http://gitlab域名/api/v4/groups/你的group id` 获取JSON,提取`http_url_to_repo`。 2. 在Sublime中处理JSON,用快捷键选中并提取所有`http_url_to_repo`值。 3. 保存到h.txt,去除其他信息,仅保留URL。 4. 创建e.bat文件,内容为克隆h.txt中所有URL的批处理命令。 5. 放置h.txt和e.bat在同一文件夹,运行e.bat批量克隆仓库。URL含凭证,便于后续操作。
101 8
|
7天前
|
jenkins 持续交付 数据安全/隐私保护
GitLab——如何快速部署GitLab仓库
GitLab——如何快速部署GitLab仓库
10 0
|
2月前
|
运维 Serverless 开发工具
函数计算产品使用问题之通过GitLab仓库来部署代码,该如何配置GitLab仓库
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
3月前
|
jenkins 持续交付 开发工具
gitlab远程库代码版本回滚方法
gitlab远程库代码版本回滚方法
142 1
|
3月前
|
运维 Kubernetes JavaScript
云效产品使用报错问题之gitlab库导入到云效失败如何解决
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
3月前
|
Linux 网络安全 开发工具
【GitLab私有仓库】在Linux上用Gitlab搭建自己的私有库并配置cpolar内网穿透
【GitLab私有仓库】在Linux上用Gitlab搭建自己的私有库并配置cpolar内网穿透
128 0
|
3月前
|
Linux 数据安全/隐私保护
搭建Gitlab私服(Linux版)
搭建Gitlab私服(Linux版)
|
3月前
|
Linux
linux安装gitlab
linux安装gitlab
51 0
|
4天前
|
NoSQL 关系型数据库 MySQL
Linux学习记录---(1、基本命令)
该博客文章提供了Linux系统中基本命令的使用记录,包括文件和目录操作、Redis服务管理、MySQL数据库操作以及Tomcat服务器的启动和检查。
Linux学习记录---(1、基本命令)
|
1天前
|
安全 Linux 开发者
Linux笔记之ldd命令详解
`ldd`命令是Linux环境下一个非常实用的工具,用于显示一个程序运行时所需的共享库依赖。它帮助开发者和系统管理员快速诊断程序运行问题,特别是在处理"找不到库文件"或者"错误的库文件版本"等错误时。然而,出于安全的考虑,对于不信任的可执行文件,应该慎用 `ldd`命令,可以考虑使用其他工具如 `objdump`。总的来说,懂得如何妥善且安全地使用 `ldd`,对于维护一个稳定和高效的Linux系统来说,是非常重要的。
16 9

热门文章

最新文章