在 Debian 上部署的 GitLab(无论是 Omnibus 包还是源码安装),重置密码主要有以下几种方式,按常见程度从高到低说明。
适用于 Omnibus GitLab(最常见)
sudo gitlab-rails console -e production
等待出现类似:
irb(main):001:0>
user = User.find_by_username('root')
# 或
user = User.find_by_email('admin@example.com')
user.password = 'NewPassword123'
user.password_confirmation = 'NewPassword123'
user.save!
exit
✅ 此时可以用新密码登录 Web 界面。
sudo gitlab-rake "gitlab:password:reset[root]"
按提示输入新密码即可。
sudo gitlab-rails console -e production
User.where(admin: true).each do |u|
puts u.username, u.email
end
找到管理员账号后再按「方式一」重置。
如果是 Docker 容器:
docker exec -it gitlab gitlab-rails console -e production
后续操作与上面一致。
sudo gitlab-ctl restart
如果你能告诉我:
我可以给你更精确的步骤。