【工作记录】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和修改后的密码登录,亲测有效。

当然这个方法修改任何一个存在的用户密码应该都是可行的。

gitlab首页展示

到此基于docker搭建的gitlab就完成了。

总结

本文简单记录了基于docker搭建gitlab环境的过程,同时提供了修改密码的过程。

针对以上内容有任何疑问或者建议欢迎留言评论~

创作不易,欢迎一键三连~~

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

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

相关文章

根据源码,模拟实现 RabbitMQ - 从需求分析到实现核心类(1)

目录 一、需求分析 1.1、对 Message Queue 的认识 1.2、消息队列核心概念 1.3、Broker Server 内部关键概念 1.4、Broker Server 核心 API &#xff08;重点实现&#xff09; 1.5、交换机类型 Direct 直接交换机 Fanout 扇出交换机 Topic 主题交换机 1.6、持久化 1.7…

Objective-C获取变量类型的方法

在Objective-C中&#xff0c;要获取一个对象的类型&#xff0c;可以使用[object class]方法。这将返回一个Class对象&#xff0c;表示该对象的类型。 另外&#xff0c;typeid是C中的关键字&#xff0c;用于获取一个变量的类型信息。在Objective-C中&#xff0c;typeid并不适用于…

对于生产者消费者/shutdown/close的补充

信号量解决生产者消费者/读写者问题_右大臣的博客-CSDN博客 一点补充 模拟简单的string&#xff0c;循环队列&#xff0c;vector_右大臣的博客-CSDN博客 补充总结 写一个循环队列 用个循环队列去表示class myqueue{ vector<int>qq capacity 容量 front 头 rear 尾…

PyTorch翻译官网教程-FAST TRANSFORMER INFERENCE WITH BETTER TRANSFORMER

官网链接 Fast Transformer Inference with Better Transformer — PyTorch Tutorials 2.0.1cu117 documentation 使用 BETTER TRANSFORMER 快速的推理TRANSFORMER 本教程介绍了作为PyTorch 1.12版本的一部分的Better Transformer (BT)。在本教程中&#xff0c;我们将展示如…

Openlayers实战:列表与图层双向信息提示

在Openlayers的实际项目中,经常会在左侧列出信息列表,右边的地图上显示的是对应的图层内容,两边是一一对应的,为了看出来选择的是哪一个,就需要两边互相提示,本示例就很好的展示了这种效果,具体的方法请参考源代码。 效果图 源代码 /* * @Author: 大剑师兰特(xiaozhu…

【Kubernetes】Pod基础概念

目录 在Kubernetes集群中Pod有如下两种使用方式&#xff1a; pause容器使得Pod中的所有容器可以共享两种资源&#xff1a;网络和存储。 ●网络&#xff1a; ●存储&#xff1a; 总结&#xff1a; kubernetes中的pause容器主要为每个容器提供以下功能&#xff1a; Kubern…

【ES问题总结】

文章目录 1、什么是ElasticSearch;2、ElasticSearch的基本概念&#xff1b;3、什么是倒排索引&#xff1b;4、DocValue的作用&#xff1b;5、text和keyword类型的区别&#xff1b;7、query和filter的区别&#xff1b;8、es写数据的过程&#xff1b;9、es的更新和删除流程&#…

后端常使用的中间件知识点--持续更新

类型难度mysqlmysql中SQL优化&#xff1a;多角度分析包学包会&#xff0c;sql优化全过程&#xff0c;刨根分析redis多角度剖析redis数据结构及底层实现原理、应用场景MQ简单大体说明RabbitMQ的使用&#xff08;简单版&#xff09;mybatis使用JDBC的批量插入百万数据要多少秒一遍…

Prometheus Blackbox Exporter 的 HTTP 探测指标中各个阶段的时间统计信息

在 Prometheus Blackbox Exporter 的 HTTP 探测指标中&#xff0c;probe_http_duration_seconds 指标包含各个阶段的时间统计信息。这些阶段代表了 HTTP 探测的不同阶段和指标。以下是各个阶段的含义&#xff1a; phase"dns_lookup"&#xff1a;这是指进行 DNS 查找…

每日一题——寻找旋转排序数组中的最小值(I)

寻找旋转排序数组中的最小值——I 题目链接 思路 首先我们以数组[1,2,3,4,5,6,7]举个例子&#xff0c;经过旋转后它无非就这两种情况&#xff1a; 情况一&#xff1a;旋转过后数组变成两段有序数列&#xff1a; 情况二&#xff1a;旋转过后数组不变&#xff0c;仍然有序&…

学习Pull request

我从我的导师Xing Fan指导和帮助&#xff0c;利用我的导师chunlong Li提供ChatGPT&#xff0c;在百度搜索&#xff0c;学习一些资料。以下很多内容都是我的导师Xing Fan做的。谢谢Xing Fan。考虑到隐私&#xff0c;不适合截图公开。 第一步&#xff1a; 打开Git Bash Here 如…

Excel vost 实现照光灯效果

如果你想要在 VSTO&#xff08;Visual Studio Tools for Office&#xff09;中实现在 Excel 中添加“照光灯”效果&#xff0c;你需要创建一个 VSTO 插件来实现这个功能。照光灯效果通常是指通过将非活动行或列进行高亮显示&#xff0c;以便更清楚地查看某一行或列的内容。以下…

【资料分享】全志科技T507工业核心板硬件说明书(二)

目 录 2引脚说明 2.1引脚排列 2.2引脚定义 2.3内部引脚使用说明 2.4引脚上下拉、串联说明 2.5功能引脚信号走线长度与阻抗说明 本文档为创龙科技SOM-TLT507工业

实时指标-1日留存率

2个DWD层 登录→kafka注册→kafka1个DWS 弄2条流&#xff0c;从kafka读取数据将昨日注册数据存到状态中&#xff0c;TTL为2天&#xff0c;存到map状态中&#xff0c;key为注册日期&#xff0c;value为set&#xff0c;存储注册的uid将登录流和注册流进行连接来一条登录数据&…

R语言初学者书籍推荐

Home | Bookdown 这个网站上有很多R语言的书籍&#xff0c;并且一直在更新&#xff0c;阅读起来没有难度。 今天搜索材料的时候&#xff0c;检索到下面这本书&#xff1a; 有输入&#xff0c;才会有输出。

linux ubuntu安装mysql

在 Ubuntu 上安装 MySQL 的步骤如下&#xff1a; 更新系统软件包列表&#xff1a; sudo apt update 安装 MySQL 服务器&#xff1a; sudo apt install mysql-server 安装完成&#xff0c;可以使用以下命令检查 MySQL 服务器是否正在运行: sudo systemctl status mysql 如果 MyS…

系列六、Redis中的五大数据类型及相关操作

一、五大数据类型 String类型、List类型、Set类型、ZSet类型、hash类型。 二、String类型 2.1、内存储存模型 2.2、常用操作命令 三、List类型 3.1、概述 list列表&#xff0c;相当于Java中的list集合。特点&#xff1a;元素有序 且 可以重复。 3.2、内存存储模型 3.3、常用…

Linux:Shell编程之免交互

目录 绪论 1、here Document免交互 1.1 格式 1.2 cat结合免交互实现重定向输出到指定文件 1.3 变量替换 2、Expect免交互 2.1 三种写法 3、免交互实现普通用户切换root 3.1 send_user 4、接收参数 5、嵌入执行模式 6、ssh远程登录 绪论 免交互&#xff1a;不需要人…

HA3 SQL样本实验:一种混合计算查询的全新样本解决方案

作者&#xff1a;陆唯一(芜霜) HA3&#xff08;对外开源代号&#xff1a;Havenask &#xff09;是阿里智能引擎团队自研的大规模分布式检索系统&#xff0c;广泛应用于阿里内部的搜索业务&#xff0c;是十多年来阿里在电商领域积累下来的核心竞争力产品。Ha3 SQL 是在原有Ha3引…

【HDFS】ListenableFuture在HDFS中的应用

本文主要介绍以下内容: ListenableFuture提供的功能和基本使用方法;AsyncLogger、IPCLoggerChannel(它是AsyncLogger的子类)QuorumCall类一、ListenableFuture的基本使用 ListenableFuture 是 Guava 库中提供的一个接口,它扩展了 JDK 中的 Future 接口,并添加了异步任务…