前言
前面介紹了《 搭建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>
至此私有GitLab的root密碼初始化完成,可以重新登陸

