本地Gitlab 远程使用http和tcp远程拉取或者推送项目

本地服务器搭建的Gitlab 远程克隆或者推送介绍,借助cpolar工具实现远程http和ssh两种方式连接,

这里的环境是在Linux docker上面运行的Gitlab服务,然后通过windows系统连接,前置条件是windwos需要安装好git 和ssh服务

1. Gitlab本地项目

登录我们本地的Gitlab,我们查看本地项目,方便测试,新建了一个mytest测试项目文件

image-20230704132108293

2. 安装cpolar

Linux安装cpolar 也是非常简单,快捷脚本一键安装即可,下面是安装cpolar步骤

cpolar官网地址: https://www.cpolar.com

  • 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar

成功启动cpolar服务后,我们浏览器上使用Linux局域网IP地址:9200端口,访问登录cpolar web UI管理界面(如果访问不了,关闭一下防火墙),如果没有账号点击免费注册创建一个账号。

image-20230705153654295

3. 配置Gitlab HTTP方式远程连接

登录成功后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:8080 (这里测试是这个端口,实际以你自己的端口为准)
  • 域名类型:随机域名
  • 地区:选择China VIP

点击创建

image-20230704132439826

创建成功后,我们打开左侧的在线隧道列表,就可以看到我们创建的http公网地址,有两种访问方式,一种是http和https

Snipaste_2023-07-04_13-25-04

我们使用http公网地址进行克隆,打开命令行,输入git clone 公网地址/项目路径,出现需要输入用户名密码,即Gitlab 的用户名密码

Snipaste_2023-07-04_13-28-44

输入密码后我们看到可以成功克隆下来的文件,http方式远程连接就设置好了

Snipaste_2023-07-04_13-30-08

4. 配置Gitlab SSH方式远程连接

Gitlab SSH 连接,我们需要上传公钥,简单理解:这个公钥就是谁需要ssh连接Gitlab谁就需要把他的ssh公钥上传到Gitlab中,如我们要在windows系统ssh连接Gitlab,那我们就需要在windows成一个本地的公钥然后上传给Gitlab.

打开了windows命令行,执行下面命令,其中冒号中Gitlab用户的密码就是登录时候的用户名对应的密码,这样设置后我们在ssh远程的连接的时候无需输入密码:

ssh-keygen -t rsa -C "Gitlab用户的密码" 

执行后,一路回车跳过即可,如果提示Overwrite,输入y覆盖之前的文件,最后我们看到id_rsa.pub的路径就是公钥文件路径

image-20230705161345914

根据上面的路径找到我们生成的那个id_rsa.pub公钥文件,这个文件用记事本打开,复制里面的所有内容

image-20230705161658180

然后打开Gitlab 在右上角输入ssh 接着弹出ssh keys设置,点击进入

image-20230705161902893

在框里面粘贴我们复制的公钥,然后点击添加Add key

image-20230705162030297

添加成功后我们可以看到我们添加成功是ssh公钥

image-20230705162159110

然后我们打开cpolar 登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,注意不要与已有的隧道名称重复
  • 协议:tcp
  • 本地地址:8022 (这里测试是这个端口,实际以你自己的端口为准)
  • 域名类型:随机临时TCP端口
  • 地区:选择China VIP

点击创建

image-20230705162431765

创建成功后我们点击管理界面左侧状态—在线隧道列表,查看我们创建的公网地址

image-20230705162622957

然后我们打开命令行,按照格式:git clone ssh://git@cpolar公网地址/项目路径即可看到我们成功拉取了Gitlab上面的项目,而且不需要输入密码,这样一个远程ssh方式拉取Gitlab上面的项目方式就设置好了.

image-20230705163302912

Share:

发表回复

目录

On Key

推荐文章