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

当 GitLab 服务器网络配置发生变化,如何修改

一.问题描述:

当gitlab所在服务器发生网络变更,需要对gitlab的外部ip进行修改,并且gitlab页面上看到的项目访问ip未同步变化过来,项目也无法访问,此时需要通过下面的步骤进行修复:

现象:访问失败,并且ip不对

如果gitlab是安装在虚拟机中的centos等系统下,并且想通过宿主机的网络访问gitlab,本文同样试用,只是用到的所有网络配置都是宿主机的,在虚拟机上需要设置nat网络映射

 

 

二.解决步骤

1. 更新网络配置

首先,确保你的服务器网络配置是正确的。这包括 IP 地址、网关、DNS 服务器等。

  • 对于 Linux 系统,你可以使用 ifconfig(在某些系统上已更名为 ip)或 nmcli(用于 NetworkManager 的命令行工具)来查看和修改网络接口配置。
# 查看当前网络接口配置ip addr
  • 对于 Windows 系统,你可以在“控制面板” -> “网络和共享中心” -> “更改适配器设置”中查看和修改网络配置。

     

2. 更新 GitLab 配置文件

GitLab 的配置通常位于 ​​/etc/gitlab/gitlab.rb​​。你需要确保这个文件中的网络设置(如 URL、邮箱服务器等)反映最新的网络配置。

  • 编辑 ​​/etc/gitlab/gitlab.rb​​:
external_url 'http://new-ip-address'

修改为新的 IP 地址或域名。

此时可以访问gitlab了,但是还有问题:

项目的ip不正确,接来下继续操作 

3. 重新配置和重启 GitLab

在修改了配置文件后,你需要重新配置 GitLab 并重启服务。

  • 运行重新配置脚本
sudo gitlab-ctl reconfigure

  • 重启 GitLab 服务
sudo gitlab-ctl restart

4. 检查服务状态

确保 GitLab 服务正常运行。

  • 检查服务状态
sudo gitlab-ctl status

5. 更新 DNS 和防火墙规则(如果需要)

如果更改了 IP 地址或域名,确保更新 DNS 记录和防火墙规则以允许流量通过新的地址。

  • 更新 DNS 记录:在 DNS 管理面板中更新 A 或 CNAME 记录。
  • 更新防火墙规则:确保防火墙允许新的 IP 地址或域名的流量。例如,使用 ufw(Uncomplicated Firewall):
sudo ufw allow from new-ip-address to any port http,https

此时端口号可能会和宿主机的端口号一样,不是特意设置的,如果需要设置不同端口号,通过修改nginx

编辑 ​​​/etc/gitlab/gitlab.rb​​:
加上默认端口配置
nginx['listen_port'] = 9090

重新执行更新配置操作:

sudo gitlab-ctl reconfigure

 重启服务

sudo gitlab-ctl restart

6. 测试访问性

最后,从不同的客户端或服务器测试 GitLab 的访问性,确保一切正常工作。

  • 测试访问:在浏览器中输入新的 URL 并尝试访问 GitLab。

进入项目: 

发现http的修改过来了 

通过以上步骤,你应该能够成功处理 GitLab 网络变更后的配置更新。如果遇到任何问题,检查日志文件(例如 ​​/var/log/gitlab/gitlab-rails/production.log​​)以获取更多错误信息。

http://www.lryc.cn/news/571101.html

相关文章:

  • 【Unity笔记】Unity URP 渲染中的灯光数量设置— 场景、使用方法与渲染原理详解
  • 黑龙江亿林数据 - 服务器托管
  • 无人机数据处理系统设计与难点
  • Uniapp插件改造指南:如何让vue-plugin支持HarmonyOS5原生能力?
  • Uniapp 页面路由配置(pages.json)完全指南
  • Attention Backend的认识
  • Node.js 简介(附电子学习资料)
  • LangChain 与 Milvus 的碰撞:全文检索技术实践
  • 苍穹外卖--基于Spring Cache缓存套餐
  • 在Kibana上新增Elasticsearch生命周期管理
  • FairyGUI学习
  • 网上开户系统解析与开发实践
  • Solana 一键冷分仓机制解析:如何低成本实现代币控盘打散?
  • JVM(3)——垃圾回收器
  • 【Java】脱离 JVM 约束 GraalVM + Liberica NIK + Spring + Docker 将 Java 编译为平台二进制可执行文件
  • 实现回显服务器(Echo)基于Tcp
  • 计算机网络期末速成 网络层 判断及单选题
  • FPGA基础 -- Verilog语言要素之格式
  • IPv6中的ARP“NDP协议详解“
  • Cesium快速入门到精通系列教程十:实现任意多个蜂巢似六边形组合
  • 内存泄漏到底是个什么东西?如何避免内存泄漏
  • 【企业容灾灾备系统规划】
  • 算法 学习 排序 2025年6月16日10:25:37
  • 用元框架思维,系统化构建你的专属AI助手Prompt
  • wpf 队列(Queue)在视觉树迭代查找中的作用分析
  • 记一次 .NET 某SaaS版CRM系统 崩溃分析
  • C#/.NET/.NET Core技术前沿周刊 | 第 42 期(2025年6.9-6.15)
  • 基于 C# 和 .NET 的 Spread.NET 数据处理实战
  • 深度学习入门指南:从基础概念到代码实践
  • vscode snippet 工程模板文件分享