当前位置: 首页 > ai >正文

代码管理平台Gitlab如何通过 ZeroNews 实现远程访问?

Gitlab介绍

1.1 GitLab

GitLab 是一个基于 Web 的开源代码托管平台,集代码托管、项目管理、持续集成与持续部署等功能于一身。它采用 Git 作为版本控制系统,界面友好、功能丰富。

相较于市场上的 Gitee 和 GitHub,GitLab 有以下优势:

  • 开源自托管:作为开源软件,可部署在自有服务器,完全掌控代码托管,不受第三方平台制约;而 Gitee 和 GitHub 是商业托管服务。
  • 完整 CI/CD 支持:内置持续集成与部署功能,助力团队自动构建、测试和交付软件,提升开发效率与软件质量。
  • 全面项目管理功能:除代码仓库管理外,还具备项目计划、问题跟踪、文档管理和协作等功能,方便团队组织管理项目。
  • 丰富社区支持:拥有庞大的全球开发者社区,可从中获取开源项目、解决问题、分享经验;社区版也有众多活跃贡献者不断增添新功能、修复 bug。

1.2 Gitee

Gitee 是中国的一家 Git 代码托管平台,功能类似 GitHub,更贴合中国开发者需求。其在国内网络连接速度快,支持中文界面和文档,在中国用户中颇受欢迎。

1.3 GitHub

GitHub 是全球最大的代码托管平台,也是开发者社交网络。它知名度高、社区广泛,覆盖各类技术领域。提供出色的协作与分享功能,方便开发者与全球同行合作,还支持与众多第三方服务集成,如代码审查工具、持续集成服务等。

总之,GitLab、Gitee 和 GitHub 均为优秀的代码托管平台,适用于不同需求和场景,选择取决于团队规模、项目需求和个人偏好。

外网使用Gitlab遇到的问题

在当前的企业网络架构下,运维人员将 GitLab 服务器部署于总部机房。然而,这种部署方式导致出现了一个问题:分公司开发人员由于地理位置和网络拓扑的限制,无法直接访问位于总部机房的 GitLab 服务器;

同时,出差在外的运维人员,因所处网络环境与总部机房网络之间缺乏有效连通,也无法顺利访问该服务器,这在一定程度上影响了开发工作的协同性和运维工作的及时性。

方案特点

遇到这种情况,我们可以使用 ZeroNews,无需公网IP即可实现 Gitlab 服务器公网访问

  • 远程传输端到端加密保障访问安全
  • 对网络无要求无需公网IP
  • 不需要在路由器防火墙端口映射
  • 隧道稳定且流畅,私钥支持100%自持

实操演示

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

① 部署 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 容器已成功运行,然后继续下一步。

② Agent 部署

在服务器安装并绑定 Agent(客户端)

③ 为 gitlab 分配 ZeroNews 公网域名

在 ZeroNews 云端控制台配置域名端口,勾选HTTPS协议。

④ 为 gitlab 添加公网映射

进入“映射”页面,选择及填写对应的信息完成映射配置。

确认信息无误后点击「确认」,系统将自动生成 HTTPS 外网访问地址,这个地址是外网连接Gitlab服务器的访问地址。

⑤ 配置 GitLab 的 git clone HTTPS 地址

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

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

⑥ GitLab 测试 Projects

创建 GitLab 测试 Projects

创建 tc , 步骤如下:

查看 创建好的 tc project

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

⑦ 从客户端 Git Clone 和版本控制

1. 从客户端进行 Git Clone:

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

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

2. 使用 SourceTree 进行版本控制:

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

http://www.xdnf.cn/news/18180.html

相关文章:

  • AI时代SEO关键词优化新策略
  • Redis-缓存-雪崩-持久化、集群、灾备
  • 大数据毕业设计选题推荐-基于Hadoop的电信客服数据处理与分析系统-Spark-HDFS-Pandas
  • Windows 上用 pyenv-win 玩转多版本 Python:安装、国内源、常用命令与版本切换
  • 代码随想录Day57:图论(寻宝prim算法精讲kruskal算法精讲)
  • HT6881:重塑便携式音频体验的高效能功率放大器
  • Paraformer实时语音识别中的碎碎念
  • 将SSL配置迁移到Nacos的步骤
  • HarmonyOS 中的 setInterval的基本使用
  • 分布式机器学习之流水线并行GPipe:借助数据并行来实现模型并行计算
  • 矿物分类系统开发笔记(二):模型训练[删除空缺行]
  • ZooKeeper 一致性模型解析:线性一致性与顺序一致性的平衡
  • VScode ROS文件相关配置
  • 【habitat学习一】Habitat-Lab 配置键文档详解(CONFIG_KEYS.md)
  • 嵌入式开发学习———Linux环境下网络编程学习(三)
  • RAG 面试题(实时更新补充)
  • 学习笔记分享——基于STM32的平衡车项目
  • Ubuntu 和麒麟系统创建新用户 webapp、配置密码、赋予 sudo 权限并禁用 root 的 SSH 登录的详细
  • 【PyTorch】单对象分割项目
  • 八大排序简介
  • Java 11中的Collections类详解
  • 数据结构:二叉树oj练习
  • Kubernetes Pod 控制器
  • 【PyTorch项目实战】OpenNMT本地机器翻译框架 —— 支持本地部署和自定义训练
  • 学习strandsagents的http_request tool
  • 接口性能测试工具 - JMeter
  • IMX6ULL-KERNEL源代码
  • KMM跨平台叛逃实录:SwiftUI与Compose Multiplatform共享ViewModel的混合开发框架(代码复用率85%)
  • RPC高频问题与底层原理剖析
  • 【树莓派】【嵌入式】远程树莓派,解决ping不通问题