【工作记录】docker安装gitlab、重置密码@20230809
前言
本文记录下基于docker安装gitlab并重置管理员密码的过程。
作为记录的同时也希望能帮助到需要的朋友们。
搭建过程
1. 准备好docker环境并启动docker
[root@slave-node1 docker-gitlab]# docker version
Client:Version: 18.06.1-ceAPI version: 1.38Go version: go1.10.3Git commit: e68fc7aBuilt: Tue Aug 21 17:23:03 2018OS/Arch: linux/amd64Experimental: falseServer:Engine:Version: 18.06.1-ceAPI version: 1.38 (minimum version 1.12)Go version: go1.10.3Git commit: e68fc7aBuilt: Tue Aug 21 17:25:29 2018OS/Arch: linux/amd64Experimental: false
[root@slave-node1 docker-gitlab]# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)Active: active (running) since Wed 2023-08-09 11:39:10 CST; 2h 6min agoDocs: https://docs.docker.comMain PID: 1870 (dockerd)Tasks: 88Memory: 115.1MCGroup: /system.slice/docker.service├─1870 /usr/bin/dockerd├─1878 docker-containerd --config /var/run/docker/containerd/containerd.toml├─9827 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 13888 -container-ip 172.17.0.2 -container-port 80├─9841 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 13443 -container-ip 172.17.0.2 -container-port 443├─9853 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 13222 -container-ip 172.17.0.2 -container-port 22└─9862 docker-containerd-shim -namespace moby -workdir /var/lib/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/46fecc380b118c78b1ac8ff45f...
....省略部分日志
2. 创建文件夹并运行容器
# 新建文件夹用于存储数据和日志
mkdir -p /opt/docker-gitlab
# 拉取镜像、创建并运行容器
docker run -d -p 13443:443 -p 13888:80 -p 13222:22 --name gitlab --restart always -v /opt/docker-gitlab/config:/etc/gitlab -v /opt/docker-gitlab/logs:/var/log/gitlab -v /opt/docker-gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
首次启动过程比较慢,可以通过docker logs -f gitlab --tail 200实时查看启动日志。
3. 尝试访问
启动完成后访问服务器ip:13888即可看到gitlab首页

默认密码不清楚,网上很多说法是用户名是root, 密码是: 5iveL!fe 我试了下是进不去的,可能是版本升级后更换了默认密码吧。
补充说明:
后面在研究单点登录配置的时候发现在宿主机的/opt/docker-gitlab/config目录下存在initial_root_password这个文件,文件中包含了root密码,第一次登录可以使用这个密码,亲测有效。登录后建议还是要修改这个默认密码。
文件内容如下:
[root@slave-node1 config]# pwd
/opt/docker-gitlab/config
[root@slave-node1 config]# ls -ll
total 176
-rw-------. 1 root root 128291 Aug 9 11:52 gitlab.rb
-rw-------. 1 root root 19103 Aug 9 13:52 gitlab-secrets.json
-rw-------. 1 root root 749 Aug 9 11:52 initial_root_password
-rw-------. 1 root root 513 Aug 9 11:52 ssh_host_ecdsa_key
-rw-r--r--. 1 root root 179 Aug 9 11:52 ssh_host_ecdsa_key.pub
-rw-------. 1 root root 411 Aug 9 11:52 ssh_host_ed25519_key
-rw-r--r--. 1 root root 99 Aug 9 11:52 ssh_host_ed25519_key.pub
-rw-------. 1 root root 2602 Aug 9 11:52 ssh_host_rsa_key
-rw-r--r--. 1 root root 571 Aug 9 11:52 ssh_host_rsa_key.pub
drwxr-xr-x. 2 root root 6 Aug 9 11:53 trusted-certs
[root@slave-node1 config]# cat initial_root_password
# WARNING: This value is valid only in the following conditions
# 1. If provided manually (either via `GITLAB_ROOT_PASSWORD` environment variable or via `gitlab_rails['initial_root_password']` setting in `gitlab.rb`, it was provided before database was seeded for the first time (usually, the first reconfigure run).
# 2. Password hasn't been changed manually, either via UI or via command line.
#
# If the password shown here doesn't work, you must reset the admin password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.# 没错这个就是root对应的初始密码了。
Password: 3dlrX3hiA4RebgqVU7f44I1f7l2jeNThEGYjxjVp/Uw=# NOTE: This file will be automatically deleted in the first reconfigure run after 24 hours.
4. 修改ROOT密码
修改密码需要使用gitlab自带的控制台命令行工具,需要进入到容器中执行。
[root@slave-node1 docker-gitlab]# docker exec -it gitlab bash
root@ac5a942b141f:/# cd /opt/gitlab/
root@ac5a942b141f:/opt/gitlab# ls -ll
total 19972
-rw-r--r--. 1 root root 7854098 Jan 4 2022 LICENSE
drwxr-xr-x. 2 root root 4096 Jan 4 2022 LICENSES
drwxr-xr-x. 2 root root 4096 Jan 4 2022 bin
-rw-r--r--. 1 root root 12510625 Jan 4 2022 dependency_licenses.json
drwxr-xr-x. 18 root root 4096 Aug 9 05:52 embedded
drwxr-xr-x. 11 root root 4096 Aug 9 05:53 etc
drwxr-xr-x. 2 root root 4096 Aug 9 05:53 init
drwxr-xr-x. 2 root root 4096 Jan 4 2022 licenses
drwxr-xr-x. 2 root root 4096 Aug 9 05:53 service
drwxr-xr-x. 17 root root 4096 Aug 9 05:53 sv
drwxr-xr-x. 3 root root 18 Aug 9 05:52 var
-rw-r--r--. 1 root root 31571 Jan 4 2022 version-manifest.json
-rw-r--r--. 1 root root 12062 Jan 4 2022 version-manifest.txt
root@ac5a942b141f:/opt/gitlab# gitlab-rails console
--------------------------------------------------------------------------------Ruby: ruby 2.7.5p203 (2021-11-24 revision f69aeb8314) [x86_64-linux]GitLab: 14.6.1 (661d663ab2b) FOSSGitLab Shell: 13.22.1PostgreSQL: 12.7
--------------------------------------------------------------------------------
Loading production environment (Rails 6.1.4.1)
irb(main):001:0> user=User.find_by(username:'root')
=> #<User id:1 @root>
irb(main):002:0> user.password='xxxxxxx'
=> "xxxxxxx"
irb(main):003:0> user.password_confirmation='xxxxxxx'
=> "xxxxxxx"
irb(main):004:0> user.save!
=> true
irb(main):005:0> exit
root@ac5a942b141f:/opt/gitlab# exit
exit
简单来说就是进入到命令行—>找到用户—>设置密码—>设置确认密码—>保存并退出。跟http请求逻辑有点像。
这样就完成了密码重置,可以重新访问http://ip:13888 使用root和修改后的密码登录,亲测有效。
当然这个方法修改任何一个存在的用户密码应该都是可行的。

到此基于docker搭建的gitlab就完成了。
总结
本文简单记录了基于docker搭建gitlab环境的过程,同时提供了修改密码的过程。
针对以上内容有任何疑问或者建议欢迎留言评论~
创作不易,欢迎一键三连~~
相关文章:
【工作记录】docker安装gitlab、重置密码@20230809
前言 本文记录下基于docker安装gitlab并重置管理员密码的过程。 作为记录的同时也希望能帮助到需要的朋友们。 搭建过程 1. 准备好docker环境并启动docker [rootslave-node1 docker-gitlab]# docker version Client:Version: 18.06.1-ceAPI version: 1.38…...
数据挖掘的基本概念和大数据的特点
数据挖掘是指从大量数据中提取有价值的信息或模式的过程。它通常使用计算机技术来分析数据,并利用统计学、机器学习、人工智能等方法来发现数据中的隐藏规律、趋势和关联性。 数据挖掘的基本概念包括以下几个方面: 数据预处理:对原始数据进行…...
LabVIEW开发分段反射器测试台
LabVIEW开发分段反射器测试台 随着对太空的观察需求越来越远,而不是当前技术(如哈勃望远镜)所能达到的,有必要增加太空望远镜主镜的尺寸。但是,增加主镜像的大小时存在几个问题。随着反射镜尺寸的增加,制造…...
二级python和二级c哪个简单,二级c语言和二级python
大家好,小编为大家解答二级c语言和二级office一起报可以吗的问题。很多人还不知道计算机二级c语言和python哪个好考,现在让我们一起来看看吧! 介绍Python有很多库和使用Qt编写的接口,这自然创建c调用Python的需求。一路摸索,充满艰辛的添加头…...
E: Package ‘curl‘ has no installation candidate/ E:软件包没有可用的安装源
解决方案: 访问etc/apt/source.list 修改或者添加安装源 不用版本的Linux 有不同的配置比如我的是Debian 12 其他版本的去搜索引擎搜索即可 vim /etc/apt/source.list 改成修改或添加 // 以下是官方示例 deb http://deb.debian.org/debian bookworm main non-…...
代理模式及常见的3种代理类型对比
代理模式及常见的3种代理类型对比 代理模式代理模式分类静态代理JDK动态代理CGLIB动态代理Fastclass机制 三种代理方式之间对比常见问题 代理模式 代理模式是一种设计模式,提供了对目标对象额外的访问方式,即通过代理对象访问目标对象,这样可…...
8.6 校招 内推 面经
绿泡泡: neituijunsir 交流裙,内推/实习/校招汇总表格 1、面经 | 车载测试-23 面经 | 车载测试-23 2、校招 | 荣耀2024届全球校园招聘启动(内推) 校招 | 荣耀2024届全球校园招聘启动(内推) 3、校招 |…...
【大数据之Flume】七、Flume进阶之自定义Sink
(1)概述: Sink 不断地轮询 Channel 中的事件且批量地移除它们,并将这些事件批量写入到存储或索引系统、或者被发送到另一个 Flume Agent。 Sink 是完全事务性的。在从 Channel 批量删除数据之前,每个 Sink 用 Chan…...
vue对于时间的处理
2023-08-05 11:25:45 假如这个就是我们要传的时间字符串 比如今天是2023-08-05(同一天):现在把这个时间字符串传入到 formatDate()这个方法,就会给你返回 11:25 比如今天是2023-08-06(前一天&a…...
Apache DolphinScheduler 3.1.8 版本发布,修复 SeaTunnel 相关 Bug
近日,Apache DolphinScheduler 发布了 3.1.8 版本。此版本主要基于 3.1.7 版本进行了 bug 修复,共计修复 16 个 bug, 1 个 doc, 2 个 chore。 其中修复了以下几个较为重要的问题: 修复在构建 SeaTunnel 任务节点的参数时错误的判断条件修复 …...
科技云报道:一波未平一波又起?AI大模型再出邪恶攻击工具
AI大模型的快速向前奔跑,让我们见识到了AI的无限可能,但也展示了AI在虚假信息、深度伪造和网络攻击方面的潜在威胁。 据安全分析平台Netenrich报道,近日,一款名为FraudGPT的AI工具近期在暗网上流通,并被犯罪分子用于编…...
深度对话|如何设计合适的网络经济激励措施
近日,我们与Mysten Labs的首席经济学家Alonso de Gortari进行了对话,讨论了如何在网络运营商和参与者之间找到激励措施的平衡,以及Sui的经济如何不断发展。 是什么让您选择将自己的经济学背景应用于区块链和Web3领域? 起初&…...
opencv带GStreamer之Windows编译
目录 1、下载GStreamer和安装2. GSTReamer CMake配置3. 验证是否配置成功 1、下载GStreamer和安装 下载地址如下: gstreamer-1.0-msvc-x86_64-1.18.2.msi gstreamer-1.0-devel-msvc-x86_64-1.18.2.msi 安装目录无要求,主要是安装完设置环境变量 xxx\1…...
Java并发编程之锁的升级
Java 中的锁机制是多线程编程中的一部分。锁一共有4种状态,级别从低到高依次是:无锁状态、偏向锁状态、轻量级锁状态和重量级锁状态,这几个状态会随着竞争情况逐渐升级。 锁可以升级但不能降级,意味着偏向锁升级成轻量级锁后不能…...
多核异构处理器A核与M核通信过程
多核异构处理器是指集成了不同类型或架构的CPU的系统级芯片(SoC)。 例如,有些处理器同时包含了高性能的A核(如Cortex-A)和低功耗的M核(如Cortex-M)。 这样的设计可以让不同的CPU负责不同的任务…...
面试热题(反转链表)
给你单链表的头指针 head 和两个整数 left 和 right ,其中 left < right 。请你反转从位置 left 到位置 right 的链表节点,返回 反转后的链表 。 链表的题,大部分都可以用指针或者递归可以做,指针如果做不出来的话,…...
竞赛项目 深度学习的水果识别 opencv python
文章目录 0 前言2 开发简介3 识别原理3.1 传统图像识别原理3.2 深度学习水果识别 4 数据集5 部分关键代码5.1 处理训练集的数据结构5.2 模型网络结构5.3 训练模型 6 识别效果7 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习…...
Java项目部署云windows细节
springboot项目 pom文件中必须要有这个插件(正常其实都有就是我手贱以前不小心删除了) 他的作用是查找主类 <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-…...
软件功能测试有什么注意事项?功能测试报告起到什么作用?
软件功能测试是软件开发过程中至关重要的一环,它用于评估软件功能的质量和稳定性,并确保软件能够按照预期进行工作。然而,在进行功能测试时,有一些注意事项需要特别关注,以确保测试的准确性和有效性。 一、软件功能测…...
Kubernetes 调度 约束
调度约束 Kubernetes 是通过 List-Watch 的机制进行每个组件的协作,保持数据同步的,每个组件之间的设计实现了解耦。 用户是通过 kubectl 根据配置文件,向 APIServer 发送命令,在 Node 节点上面建立 Pod 和 Container。 APIServer…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...
【单片机期末】单片机系统设计
主要内容:系统状态机,系统时基,系统需求分析,系统构建,系统状态流图 一、题目要求 二、绘制系统状态流图 题目:根据上述描述绘制系统状态流图,注明状态转移条件及方向。 三、利用定时器产生时…...
拉力测试cuda pytorch 把 4070显卡拉满
import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试,通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小,增大可提高计算复杂度duration: 测试持续时间(秒&…...
UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)
UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中,UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化…...
C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...
ubuntu系统文件误删(/lib/x86_64-linux-gnu/libc.so.6)修复方案 [成功解决]
报错信息:libc.so.6: cannot open shared object file: No such file or directory: #ls, ln, sudo...命令都不能用 error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory重启后报错信息&…...
es6+和css3新增的特性有哪些
一:ECMAScript 新特性(ES6) ES6 (2015) - 革命性更新 1,记住的方法,从一个方法里面用到了哪些技术 1,let /const块级作用域声明2,**默认参数**:函数参数可以设置默认值。3&#x…...
CppCon 2015 学习:Time Programming Fundamentals
Civil Time 公历时间 特点: 共 6 个字段: Year(年)Month(月)Day(日)Hour(小时)Minute(分钟)Second(秒) 表示…...
高端性能封装正在突破性能壁垒,其芯片集成技术助力人工智能革命。
2024 年,高端封装市场规模为 80 亿美元,预计到 2030 年将超过 280 亿美元,2024-2030 年复合年增长率为 23%。 细分到各个终端市场,最大的高端性能封装市场是“电信和基础设施”,2024 年该市场创造了超过 67% 的收入。…...
性能优化中,多面体模型基本原理
1)多面体编译技术是一种基于多面体模型的程序分析和优化技术,它将程序 中的语句实例、访问关系、依赖关系和调度等信息映射到多维空间中的几何对 象,通过对这些几何对象进行几何操作和线性代数计算来进行程序的分析和优 化。 其中࿰…...
