私有Docker部署GitLab重置管理员密码
前言
前面介绍了《 搭建Docker版gitlab私有云 》,部署完成后初次登陆会指引创建root密码。 一段时间未登录,忘记 root 密码怎么处理。 详情如下:
登陆GitLab容器内部
在搭建Gitlab的服务器上,查询当前容器
docker ps | grep gitlab
查询到容器的id为 ceb2e4d61d18
进入到GitLab容器的内部
docker exec -it ceb2e4d61d18 /bin/bash
重置密码 (非docker部署gitlab,可直接操作此步骤)
输入以下命令:
gitlab-rails console
(有些博客写的使用 gitlab-rails console production 命令,我这边亲试不行,需要去掉production。 可能和版本有关系 )
弹出 Loading production environment (Rails 6.1.3.2) 后,在下面输入:
1、 user=User.where(id:1).first
指定修改的用户,1 为root
2、user.password='test123'
需要设置的密码
3、user.password_confirmation='test123'
确认上面输入的密码
4、 user.save!
保存
gitlab-rails console
Loading production environment (Rails 4.2.10)
irb(main):001:0> user=User.where(id:1).first
=> #<User id:1 @root>
irb(main):003:0> user.password='需要设置的密码'
=> "test123"
irb(main):004:0> user.password_confirmation='确认上面的密码'
=> "test123"
irb(main):005:0> user.save!
Enqueued ActionMailer::DeliveryJob (Job ID: 55d5938a-8506-49cc-be8c-6afd666c4efe) to Sidekiq(mailers) with arguments: "DeviseMailer", "password_change", "deliver_now", gid://gitlab/User/1
=> true
irb(main):006:0>