Skip to main content

连接内网 GitLab 私有仓库

本文介绍如何在 CentOS 7 系统上以容器方式部署 GitLab,并演示如何使用 ZeroNews 通过互联网访问 GitLab 私有仓库,进行代码版本发布与更新。

先决条件

  1. 拥有一个有效的 ZeroNews 账户

第 1 步: 部署 GitLab 容器

在开始部署 GitLab 容器之前,您需要创建本地目录来存储 GitLab 数据、配置和日志:

#创建本地目录
mkdir -p /opt/docker/gitlab/data
mkdir -p /opt/docker/gitlab/config
mkdir -p /opt/docker/gitlab/log

#gitlab 端口号映射:
80:80
2222:22

#运行 gitlab 容器
docker run -d --restart=always --name=gitlab -p 80:80 -p 2222:22 -v /opt/docker/gitlab/data:/var/opt/gitlab -v /opt/docker/gitlab/config:/etc/gitlab -v /opt/docker/gitlab:/var/log/gitlab -v /etc/localtime:/etc/localtime gitlab/gitlab-ce:latest

#查看root 密码
docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password

查看创建好 GitLab 容器,确保 GitLab 容器已成功运行,然后继续下一步。

318439882-9af9062d-3854-4ff4-a51d-c80803b74f3b

第 2 步:生成 ZeroNews 客户端所需的 Token

  1. 用户登录 ZeroNews 平台,在设备菜单的 Token 页面生成 Token。生成完毕后,复制生成的 Token 备用。

第 3 步:运行 ZeroNews 客户端

参考 Linux 中运行 ZeroNews , 在 Linux 服务器上运行 ZeroNews,绑定 Token, 完成 ZeorNews 客户端上线。

第 4 步:为 gitlab 分配 ZeroNews 公网域名

  1. 添加用于 gitlab 流媒体访问的公网域名

用户登录 ZeroNews 平台,在 "资源" 的 "域名" 管理页面, 点击 "添加域名" 添加公网可访问的域名。

  • 生效设备: 选择对应的 linux ZeroNews 设备。
  • 域名前缀: 用户输入定义的 域名前缀,如 gitlab

  1. 为 gitlab 启动 TLS证书功能, ZeroNews 自动为 gitlab 域名分配 TLS 证书

第 5 步:为 gitlab 添加公网映射

  1. 进入"应用"页面,点击 "添加应用" 添加 gitlab 应用。
  • 应用名称: 如输入 gitlab

  1. 应用添加完成后, 在应用的下拉列表中,添加 gitlab HTTPS 站点映射
  • 映射协议:选择 HTTPS 协议
  • 公网访问地址:选择 gitlab 的域名地址,gitlab.south.takin.cc
  • 映射带宽: 为 gitlab 分配带宽,不大于用户当前的最大可用带宽
  • 内网映射地址:内网IP地址默认输入 127.0.0.1 内网端口输入 gitlab 容器映射的端口号 80

gitlab 映射添加完成后,可在应用详情中可查看添加好的映射列表。

第 6 步:配置 GitLab 的 git clone HTTPS 地址

点击 GitLab 映射的访问地址后面的打开小图标,自动在浏览器中打开 GitLab 管理平台,输入用户名和密码登录。

Snipaste_2024-05-11_15-57-30

318444481-58ff20f0-1654-4fc3-9610-2ddee01a4988

进入 "Admin Area" > "Settings - General"。

318442677-643f97b3-b4a0-4152-8c16-64320c60295b

在 "Visibility and Access Controls" 部分,将 GitLab 的公网域名地址填入 "Custom Git clone URL for HTTP(S)"。

318443073-714dae18-f5b5-4bc2-b27f-ca65c697bde6

第 7 步: GitLab 测试 Projects

创建 GitLab 测试 Projects

创建 tc , 步骤如下:

318445881-6566142d-7a21-49cf-896f-9eeef15389ce

318445770-b6b3fea3-12f0-4554-9fce-46acaa88447e

318445539-4661e878-44c8-45d6-b78f-275273ca3b28

查看 创建好的 tc project

318447486-f57a09c4-764b-45dd-b554-4ba3d7ea8482

进入到 tc project,查看 Git Clone 地址

318447717-b24b7b17-1309-43dd-a03b-5840a19e8826

第 8 步:从客户端 Git Clone 和版本控制

  1. 从客户端进行 Git Clone:

在能够访问互联网的 Linux 系统上,使用以下命令进行 Git Clone:

git clone https://gitlab.test.takin.cc/root/tc.git

318454466-a77c1496-10ad-4744-9bc2-e734195fd617

  1. 使用 SourceTree 进行版本控制**:

打开 SourceTree,点击 "新增 - Clone",根据提示输入 GitLab 的账户和密码。

318462359-a5f676ee-c1a3-4c91-a071-97b4d26ab36b