參考官方文檔
https://docs.gitlab.com/ee/security/reset_root_password.html
https://docs.gitlab.com/ee/security/unlock_user.html
操作背景
Gitlab是Docker部署,Jenkins賬號登陸不了,開始是懷疑密碼不對,通過控制檯登陸重置了密碼,還是登陸不了,懷疑是Jenkins用戶被鎖住了(默認錯誤登陸超過10次會鎖定),解鎖後登陸成功。
操作步驟
1.登陸Gitlab所在容器
[root@188-20 ~]# docker exec -it gitlab /bin/bash
root@gitlab:/# ls
RELEASE bin dev home lib64 mnt proc run srv tmp var
assets boot etc lib media opt root sbin sys usr
2.登陸控制檯
root@gitlab:/# gitlab-rails console production
Loading production environment (Rails 4.2.10)
3.通過郵箱找到用戶
irb(main):003:0> user=User.where(email:'[email protected]').first
=> #<User id:12 @jenkins>
4.修改密碼並保存
irb(main):005:0> user.password=12345678
=> 12345678
irb(main):006:0> user.password_confirmation=12345678
=> 12345678
irb(main):007:0> user.save!
Enqueued ActionMailer::DeliveryJob (Job ID: 53d8c7ea-c523-43a1-a5e6-032c836f4870) to Sidekiq(mailers) with arguments: "DeviseMailer", "password_change", "deliver_now", gid://gitlab/User/22
=> true
5.解鎖用戶
irb(main):012:0> user=User.where(email:'[email protected]').first
=> #<User id:22 @jenkins>
irb(main):013:0> user.unlock_access!
=> true
irb(main):014:0>