一、Docker部署GitLab(详细步骤)

Docker部署GitLab(详细步骤)

  • 一、拉取镜像
  • 二、启动容器
  • 三、修改配置
  • 四、修改密码
  • 五、浏览器访问

一、拉取镜像

  • docker安装教程:https://qingsi.blog.csdn.net/article/details/131270071
docker pull gitlab/gitlab-ce:latest

在这里插入图片描述

二、启动容器

docker run \-itd  \-p 9980:80 \-p 9922:22 \-v /data/gitlab/etc:/etc/gitlab  \-v /data/gitlab/log:/var/log/gitlab \-v /data/gitlab/opt:/var/opt/gitlab \--restart always \--privileged=true \--name gitlab \gitlab/gitlab-ce

在这里插入图片描述

三、修改配置

注意:接下来的配置请在容器内进行修改,不要在挂载到宿主机的文件上进行修改。否则可能出现配置更新不到容器内,或者是不能即时更新到容器内,导致gitlab启动成功,但是无法访问

# 1.进入docker
docker exec -it gitlab bash
# 2.修改gitlab.rb
vi /etc/gitlab/gitlab.rb
# 3.在gitlab.rb最上面,加入下面的内容(需要自己调整)
#gitlab访问地址,可以写域名。如果端口不写的话默认为80端口
external_url 'http://192.168.11.128' 
#ssh主机ip
gitlab_rails['gitlab_ssh_host'] = '192.168.11.128'
#ssh连接端口
gitlab_rails['gitlab_shell_ssh_port'] = 9922

在这里插入图片描述

修改完成之后保存退出即可,由于咱们在docker中运行,在gitlab上生成的http地址应该是http://192.168.11.128:9980,所以,要修改下面文件

# 修改http和ssh配置
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.ymlgitlab:host: 192.168.11.128 # 这里改为服务器ipport: 9980 # 这里改为9980https: false

在这里插入图片描述

# 重启gitlab
gitlab-ctl restart
# 退出容器 
exit

在这里插入图片描述

四、修改密码

# 1.进入容器内部
docker exec -it gitlab /bin/bash# 2.进入控制台(这里会比较久)
gitlab-rails console -e production# 3.查询id为1的用户,id为1的用户是超级管理员
user = User.where(id:1).first
# 修改密码为pdl123456
user.password='qingsi1234'
# 保存
user.save!
# 退出
exit

在这里插入图片描述

五、浏览器访问

  • 路径访问:http://192.168.11.128:9980/

注意:机器配置要大于4g,否则很容易启动不了,报502
在这里插入图片描述

  • 输入刚刚修改的密码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/797526.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL-相关数据类型

MySQL-数据类型 整数类型 整数类型包含以下五种: 整数类型字节说明tinyint1一般用于枚举数据,比如系统设定取值范围很小且固定的场景。smallint2可以用于较小范围的统计数据,比如统计工厂的固定资产库存数量等。mediumint3用于较大整数的计…

邮件服务器:Postfix

文章目录 邮件服务器的功能与工作原理电子邮件的问题Mail server与DNS 之间的关系邮件传输所需要的组件(MTA、MUA、MDA)以及相关协议用户收信时服务器端所提供的相关协议:MRA电子邮件的数据内容 使用Postfix与Dovecot部署邮件系统部署基础的电子邮件系统配置Postfix…

软件工程

开发模型 瀑布模型 用于结构化模型开发 适用需求明确或者二次开发 原型模型 适用需求不明确 演化模型 增量模型 适用需求不明确 先做一块,再做一块,这样不断的对核心功能的审视,降低风险 螺旋模型 由多个模型组合成 适用需求不明…

政校企三方牵手打造新质生产力,共建城市供应链安全检测中心

​4月3日 十堰市经开区政府 x 开源网安 战略合作签约仪式 圆满完成 4月3日,开源网安与十堰市经济技术开发区政府、湖北工业职业技术学院、十堰市经开建投签约仪式在十堰国际会展中心圆满完成。本次签约后,签约方将共建十堰市智能网联汽车网络安全测试…

什么是数据治理?你都了解吗?

在当今数字化时代,数据已成为企业重要的战略资产。有效管理数据对于企业提高运营效率、降低成本、做出更好的决策至关重要。数据治理作为一种重要的管理方法,可以帮助企业确保数据的质量、安全、合规性和有效利用。 一、数据治理的定义与重要性 近日&a…

(南京观海微电子)——TFT驱动原理

TFT液晶显示器件是指在液晶显示器件的每个像素上都连接一个薄膜场效应晶体管。这个场效应管制作在液晶显示器件的玻璃上。每个场效应管独立驱动一个像素,从而可以实现高速度、高亮度、高对比度的显示效果。 TFT液晶显示器件的驱动特性取决于场效应管的工作特性。场效…

Electron 是一个流行的框架

Electron 是一个流行的框架,允许开发者使用 JavaScript, HTML 和 CSS 构建跨平台的桌面应用程序。如果你想将你的 Electron 应用程序打包成一个 APK 文件(Android 应用程序包),那么你可能会遇到一些问题,因为 Electron…

SpringBoot实现邮箱验证

目录 1、开启邮箱IMAP/SMTP服务,获取授权码 2、相关代码 1、使用配置Redis(用于存储验证码,具有时效性) 2、邮箱依赖和hutool(用于随机生成验证码) 3、配置Redis和邮箱信息 4、开启Redis服务 5、编写发送…

顺序表应用——通讯录实现

目录 前言: 一、开始菜单 二、通讯录代码实现 2.1 通讯录初始化 2.2 增加联系人 2.3 删除联系人 2.4 修改联系人 2.5 通讯录的销毁 三、总代码 最后: 前言: 通讯录实现的基础是基于顺序表的实现,对于顺序表如有疑惑之处可翻…

[XJTU-SY-BD]设计06 处理C/Python 结构体互操作

0.引言 很多时候,会涉及C/Python混合编程,下面给出一个建立在进程隔离基础上的C/Python计算样例 1.C侧的包裹代码 注意这里的最大问题是利用共享内存的传参。二进制信息可以通过共享内存有效传递,在真正的工业代码中,无需频繁创建共享内存,它可以一直存在。 #define S…

SpringMVC初始化工程

SpringMVC初始化工程 本文采用maven作为构建工具,SpringMVC作为主框架。 创建一个maven的web工程,并配置pom文件<!-- pom.xml --> <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0&qu…

【nginx】nginx通过配置文件阻止海外ip访问

本文首发于 ❄️慕雪的寒舍 nginx通过配置文件阻止海外ip访问 说明 因为最近发现有不少刷评论的脚本&#xff0c;在nginx请求日志里面看了眼&#xff0c;都是海外的ip&#xff0c;反正我的博客也是全中文。所以干脆把海外ip禁止artalk评论。 在/etc/nginx/nginx.conf中可以看…

海外代理IP购买指南:住宅IP代理VS.数据中心代理IP

在选择海外IP代理服务时&#xff0c;您将面临一个关键的问题&#xff1a;是选择住宅代理IP还是数据中心代理IP&#xff1f;这两者之间存在着根本性的不同&#xff0c;涉及到性能、隐私和成本等方面的考虑。住宅代理IP通常来自真实的住宅网络连接&#xff0c;更难被检测到。数据…

Winforms中的ArgumentOutOfRangeException异常

// 定时器事件 只处理计时逻辑 每隔1000毫秒会被调用。 private void timer1_Tick(object sender, EventArgs e) {count; //记录当前秒label3.Text (time - count).ToString() " 秒"; progressBar1.Value count;if(count time){timer1.Stop(); //关闭计时Sys…

MotionBuilder 脚本执行

目录 MediaPipe_Pose_in_MotionBuilder 你可以用以下几种方式执行你的脚本&#xff1a; MediaPipe_Pose_in_MotionBuilder https://github.com/Ndgt/MediaPipe_Pose_in_MotionBuilder/blob/main/PoseLandmark.py tcp通信 https://github.com/nils-soderman/motionbuilder-s…

解决Android Studio Loading Devices问题

目录 一、解决办法&#xff08;普通&#xff09;&#xff1a; 二、解决办法的优化 三、解决办法的进一步优化 问题&#xff1a;windows 11 电脑&#xff0c;每次开机&#xff0c;打开Android Studio,都会显示Loading Devices&#xff0c;连接不上设备。 原因&#xff1a;adb…

Jpa中QueryPlanCache查询计划JPQL缓存

// 所以,项目大,缓存的JPQL多,占用的堆空间也多 // 在in的场景下,可能会出现内存泄露 // 因为各种Repository的查询,并且随着in的参数个数不同,queryPlanCache缓存的in的sql越来越多,这样时间久了就会出现无法释放,甚至可能出现OOM // 我们可以通过hibernate.query.plan_cache_…

css实现更改checkbox的样式;更改checkbox选中后的背景色;更改checkbox选中后的icon

<input class"check-input" type"checkbox"> .check-input {width: 16px;height: 16px;} /* 设置默认的checkbox样式 */input.check-input[type"checkbox"] {-webkit-appearance: none; /* 移除默认样式 */border: 1px solid #999;outl…

鹏哥C语言复习——结构体

目录 结构体声明&#xff1a; 结构体内存存储相关介绍&#xff1a; 结构体的初始化与使用&#xff1a; 结构体的初始化&#xff1a; 结构体的使用&#xff1a; 结构体对齐&#xff1a; 结构体对齐原则解释&#xff1a; 结构体对齐存在的原因&#xff1a; #pragma pack…

第十四届蓝桥杯省赛大学C组(C/C++)三国游戏

原题链接&#xff1a;三国游戏 小蓝正在玩一款游戏。 游戏中魏蜀吴三个国家各自拥有一定数量的士兵 X,Y,Z&#xff08;一开始可以认为都为 0&#xff09;。 游戏有 n 个可能会发生的事件&#xff0c;每个事件之间相互独立且最多只会发生一次&#xff0c;当第 i 个事件发生时…