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

记录下docker部署gitlab-ce-17.5版本及客户端git拉取方式配置

服务端部署

# 提前拉取镜像
docker pull gitlab/gitlab-ce:17.5.0-ce.0docker run -d \
--name gitlab \
--hostname gitlab.test.cn \
-p 443:443 \
-p 88:80 \
-p 2222:22 \
--restart=always \
-v /data/gitlab/config:/etc/gitlab \
-v /data/gitlab/logs:/var/log/gitlab \
-v /data/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:17.5.0-ce.0

等待3到5分钟后即可打开登录界面,默认用户为root,密码在容器内cat /etc/gitlab/initial_root_password查看。

增加nginx反向代理
upstream gitlab {server 192.168.0.16:88;}server {listen 80;server_name gitlab.test.cn;location / {client_max_body_size 200m;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Host $http_host;proxy_set_header X-NginX-Proxy true;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";proxy_pass http://gitlab;proxy_redirect off;}
}

客户端配置

由于容器化部署为了不与宿主机的端口产生冲突,修改了gitlab的http和ssh的默认访问端口,

HTTP:88

SSH :2222

这样在客户端直接拉取的时候会无法解析gitlab的正确访问地址,因此需要在客户端需要做下特定配置。

SSH的方式拉取代码增加如下配置:
# 增加host配置
[root@master ]# cat /etc/hosts
192.168.0.16  gitlab.test.cn# 增加git SSH配置
[root@master ]# cat ~/.ssh/config 
Host gitlab.test.cnHostName gitlab.test.cnUser     gitPort     2222IdentityFile ~/.ssh/id_rsa# 配置好以后即可无需验证拉取代码
HTTP的方式拉取代码增加如下配置
[root@master ]# vim ~/.git-credentials
http://root:root1234@192.168.0.16/88# 填入的文本格式:
http://{gitlab用户名}{gitlab用户密码}@{gitlab IP地址}/{gitlab 访问端口}# 执行以下命令
git config --global credential.helper store# cat ~/.gitconfig 有以下内容输出即完成配置
[credential]
helper = store# 再下次拉取代码以后只需输入一次gitlab的用户和密码即可,以后在拉取代码都不用在输入验证信息。

相关文章:

记录下docker部署gitlab-ce-17.5版本及客户端git拉取方式配置

服务端部署 # 提前拉取镜像 docker pull gitlab/gitlab-ce:17.5.0-ce.0docker run -d \ --name gitlab \ --hostname gitlab.test.cn \ -p 443:443 \ -p 88:80 \ -p 2222:22 \ --restartalways \ -v /data/gitlab/config:/etc/gitlab \ -v /data/gitlab/logs:/var/log/gitlab …...

opencv-platform实现人脸识别

和同事接触了下甲方,对方算是一个资源整合的自由人,手里有项目,然后认识些开发就聊下有什么事情可以做的,对方聊了下做人脸签到,或者说人脸打开。就这方面我做了下简单的了解。做了个java小demo。 我们常用的人脸识别的摄像头屏幕…...

leetcode 有重复字符串的排列组合

1.题目要求: 2.题目代码&#xff1a; class Solution { public://运用回溯vector<string> result;string s;void backtricking(string S,vector<bool>& used){if(s.size() S.size()){result.push_back(s);return;}for(int i 0;i < S.size();i){if(i >…...

【大数据学习 | kafka】kafka的组件架构

broker:每个kafka的机器节点都会运行一个进程&#xff0c;这个进程叫做broker&#xff0c;负责管理自身的topic和partition&#xff0c;以及数据的存储和处理&#xff0c;因为kafka是集群形式的&#xff0c;所以一个集群中会存在多个broker&#xff0c;但是kafka的整体又不是一…...

Python基于TensorFlow实现简单循环神经网络回归模型(SimpleRNN回归算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后关注获取。 1.项目背景 Simple RNN是一种基础的循环神经网络&#xff0c;它能够处理序列数据&#xff0c;例如文本、时间序…...

torch.isclose

torch.isclose是 PyTorch 中的一个函数&#xff0c;用于判断两个张量中的对应元素是否接近相等。 其函数签名为&#xff1a;torch.isclose(input, other, rtol1e-05, atol1e-08, equal_nanFalse)。 参数说明&#xff1a; input 和 other&#xff1a;要进行比较的两个张量。r…...

Python记录-字典

定义 Python 中的字典&#xff08;dictionary&#xff09;是一种内置的数据结构&#xff0c;用于存储键值对&#xff08;key-value pairs&#xff09;。字典中的每个键&#xff08;key&#xff09;都是唯一的&#xff0c;并且与一个值&#xff08;value&#xff09;相关联。键…...

python读取学术论文PDF文件内容

目录 1、PyPDF22、pdfplumber3、PyMuPDF4、pdfminer总结 1、PyPDF2 PyPDF2 是一个常用的库&#xff0c;可以用来读取、合并、分割和修改PDF文件。读取pdf内容&#xff1a; import PyPDF2# 打开PDF文件 with open(ELLK-Net_An_Efficient_Lightweight_Large_Kernel_Network_for…...

5550 取数(max)

经验值&#xff1a;2000 时间限制&#xff1a;1000毫秒 内存限制&#xff1a;128MB 庐阳区2020年信息学竞赛试题 不许抄袭&#xff0c;一旦发现&#xff0c;直接清空经验&#xff01; 题目描述 Description 盒子里面有N个球&#xff0c;每个球上都一个数。你每次可以取走一…...

Windows常用网络命令

ipconfig 功能&#xff1a;查看维护本地的IP地址 ipconfig 显示计算机中网络适配器的ip地址、子网掩码及默认网关。 ipconfig /all 显示所有网络适配器&#xff08;网卡、拨号连接等&#xff09;的完整tcp/ip配置信息。与不带参数的用法相比&#xff0c;它的信息更全更多&am…...

地磁传感器(学习笔记上)

在咱们地磁传感器里的开发板&#xff1a; 开发板上的地磁传感器型号是QMC5883L&#xff0c;它也是使用I2C与ESP32通信&#xff0c;I2C地址为0X0D。这个项目&#xff0c;我们使用地磁传感器QMC5883L计算方位角&#xff0c;最终&#xff0c;把开发板放平到桌子上&#xff0c;旋转…...

使用 NumPy 和 Matplotlib 进行高级数据可视化:实践指南

使用 NumPy 和 Matplotlib 进行高级数据可视化&#xff1a;实践指南 数据科学和工程实践中&#xff0c;NumPy 和 Matplotlib 是强大的组合工具。本文将进一步展示如何借助这两个库进行更复杂的可视化任务&#xff0c;例如创建多曲线、叠加图、动态可视化等场景。 一、环境准备…...

mysql 启动报错 ‘/var/run/mysqld/mysqld.sock‘

问题描述&#xff1a; Docker 拉取 Ubuntu镜像&#xff0c;启动ubuntu容器后 在里边安装mysql 当容器启动时&#xff0c;不将/var/lib/mysql 目录映射到宿主机时&#xff0c;mysql可以正常启动使用当容器启动时&#xff0c;将/var/lib/mysql 目录映射到宿主机后&#xff0c;my…...

JAVA基础:常用类 (习题笔记)

1&#xff0c;验证键盘输入的用户名不能为空&#xff0c;长度大于6&#xff0c;不能有数字。 提示&#xff1a;使用字符串String类的相关方法完成 package packagingClass;import java.util.Scanner;public class Exercises1 {//程序入口public static void main(String[] arg…...

element 按钮变形 el-button样式异常

什么都没动&#xff0c;element UI的按钮变形了&#xff0c;莫名其妙&#xff0c;连官网的也变形了&#xff0c;换了其它浏览器又正常&#xff0c; 难道这是element UI的问题&#xff1f;NO&#xff0c;是浏览器的插件影响到了&#xff01;去扩展插件里面一个个关闭扩展&#x…...

Windows/Linux(服务器)查看显卡的名称

文章目录 1. 使用 nvidia-smi&#xff08;适用于 NVIDIA 显卡&#xff09;2. 使用 wmic 命令&#xff08;Windows&#xff09; 1. 使用 nvidia-smi&#xff08;适用于 NVIDIA 显卡&#xff09; 如果服务器上安装了 NVIDIA 驱动程序&#xff0c;可以使用 nvidia-smi 工具来查看…...

算法基础 - 时间复杂度和空间复杂度(万字长文详解)

文章目录 前言什么是算法效率时间复杂度定义作用类比理解 空间复杂度定义作用类比理解 大O表示法为什么需要&#xff1f;定义计算步骤1. 计算基本操作的执行次数 T(n)2. 确定 T(n) 的数量级&#xff08;按规则&#xff09;3. 使用大O表示法表示时间复杂度 常见复杂度O(1)说明案…...

【K8S系列】Kubernetes 中 Service IP 地址和端口不匹配问题及解决方案【已解决】

在 Kubernetes 中&#xff0c;Service 是实现 Pod 之间和 Pod 与外部之间通信的关键组件。Service 的 IP 地址和端口配置不当可能导致应用无法正常访问。本文将详细分析 Service IP 地址和端口不匹配的问题&#xff0c;常见原因及其解决方案。 一、问题描述 Service IP 地址和…...

10. 异常处理器

一、通过 注解 注册异常处理器 <?php namespace App\Exception\Handler;use App\Exception\FooException; use Hyperf\ExceptionHandler\ExceptionHandler; use Hyperf\HttpMessage\Stream\SwooleStream; use Swow\Psr7\Message\ResponsePlusInterface; use Throwable;use…...

python查询并安装项目所依赖的所有包

引言 如果需要进行代码的移植&#xff0c;肯定少不了在另一台pc或者服务器上进行环境的搭建&#xff0c;那么首先是要知道在已有的工程的代码中用到了哪些包&#xff0c;此时&#xff0c;如果是用人工去一个一个的代码文件中去查看调用了哪些包&#xff0c;这个工作甚是繁琐。…...

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

C++初阶-list的底层

目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...

FastAPI 教程:从入门到实践

FastAPI 是一个现代、快速&#xff08;高性能&#xff09;的 Web 框架&#xff0c;用于构建 API&#xff0c;支持 Python 3.6。它基于标准 Python 类型提示&#xff0c;易于学习且功能强大。以下是一个完整的 FastAPI 入门教程&#xff0c;涵盖从环境搭建到创建并运行一个简单的…...

【JVM】- 内存结构

引言 JVM&#xff1a;Java Virtual Machine 定义&#xff1a;Java虚拟机&#xff0c;Java二进制字节码的运行环境好处&#xff1a; 一次编写&#xff0c;到处运行自动内存管理&#xff0c;垃圾回收的功能数组下标越界检查&#xff08;会抛异常&#xff0c;不会覆盖到其他代码…...

让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比

在机器学习的回归分析中&#xff0c;损失函数的选择对模型性能具有决定性影响。均方误差&#xff08;MSE&#xff09;作为经典的损失函数&#xff0c;在处理干净数据时表现优异&#xff0c;但在面对包含异常值的噪声数据时&#xff0c;其对大误差的二次惩罚机制往往导致模型参数…...

实战三:开发网页端界面完成黑白视频转为彩色视频

​一、需求描述 设计一个简单的视频上色应用&#xff0c;用户可以通过网页界面上传黑白视频&#xff0c;系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观&#xff0c;不需要了解技术细节。 效果图 ​二、实现思路 总体思路&#xff1a; 用户通过Gradio界面上…...

用递归算法解锁「子集」问题 —— LeetCode 78题解析

文章目录 一、题目介绍二、递归思路详解&#xff1a;从决策树开始理解三、解法一&#xff1a;二叉决策树 DFS四、解法二&#xff1a;组合式回溯写法&#xff08;推荐&#xff09;五、解法对比 递归算法是编程中一种非常强大且常见的思想&#xff0c;它能够优雅地解决很多复杂的…...

表单设计器拖拽对象时添加属性

背景&#xff1a;因为项目需要。自写设计器。遇到的坑在此记录 使用的拖拽组件时vuedraggable。下面放上局部示例截图。 坑1。draggable标签在拖拽时可以获取到被拖拽的对象属性定义 要使用 :clone, 而不是clone。我想应该是因为draggable标签比较特。另外在使用**:clone时要将…...

AI书签管理工具开发全记录(十八):书签导入导出

文章目录 AI书签管理工具开发全记录&#xff08;十八&#xff09;&#xff1a;书签导入导出1.前言 &#x1f4dd;2.书签结构分析 &#x1f4d6;3.书签示例 &#x1f4d1;4.书签文件结构定义描述 &#x1f523;4.1. ​整体文档结构​​4.2. ​核心元素类型​​4.3. ​层级关系4.…...

TI德州仪器TPS3103K33DBVR低功耗电压监控器IC电源管理芯片详细解析

1. 基本介绍 TPS3103K33DBVR 是 德州仪器&#xff08;Texas Instruments, TI&#xff09; 推出的一款 低功耗电压监控器&#xff08;Supervisor IC&#xff09;&#xff0c;属于 电源管理芯片&#xff08;PMIC&#xff09; 类别&#xff0c;主要用于 系统复位和电压监测。 2. …...