Docker Gitlab忘记root密码如何修改

25

我使用Docker运行我的Gitlab,但忘记了Gitlab的管理员密码。如何更改它?

3个回答

45

我找到了一种使它能够工作的方法。 首先使用命令行连接到您的Gitlab

搜索您的Docker CONTAINER_ID

docker ps -all

例如

enter image description here

docker exec -it d0bbe0e1e3db bash <-- 使用您的CONTAINER_ID

$ gitlab-rails console -e production

enter image description here

user = User.where(id: 1).first
user.password = 'your secret'
user.password_confirmation = 'your secret'
user.save
exit

7
使用这种方法更新根密码后,我无法登录。登录容器终端后,我使用命令 gitlab-rake "gitlab:password:reset[root]" 更新了根密码,而不是使用这种方法。 (参考链接:https://docs.gitlab.com/ee/security/reset_user_password.html#rake-task) - panc
这个提议的解决方案对我起作用了。记住,gitlab要求密码中既有字母又有数字。当你执行user.save时,应该会返回true。附注:❤️ rails Ds - Brainmaniac

43

更改GitLab“root”帐户密码的“新鲜热度”是:

参见此处
gitlab-rake "gitlab:password:reset[root]"

如果您正在 Docker 容器中运行 Gitlab,则可以从主机使用以下命令(根据您的情况可能需要使用“sudo”):

docker exec -it gitlab gitlab-rake "gitlab:password:reset[root]"

假设您将Gitlab容器命名为“gitlab”。请耐心等待; 如果“输入密码:”提示需要更多时间,请不要感到惊讶。


3
这对我非常有效,感谢你的分享!你说得没错,需要耐心等待,在我的本地开发环境中花了约40秒才显示提示。 - David Farrell
完美地工作了!很烦人的是,这在官方文档中并不容易找到。 - marc.guenther
提示出现了,它说在我确认密码后:用户root的密码已成功更新。 但我仍然无法登录到Web门户。已经尝试了3次不同的密码,每次都是相同的结果。我使用的是Docker镜像:gitlab/gitlab-ee:14.10.2-ee.0。 - user1325696
在我的情况下,我使用 cp -a gitlab /media/flshdrive/gitlab 将 Docker 卷移动到另一台机器上后,问题仍未得到解决。我使用相同的 Docker 镜像,但是在新的 22.04 上使用 Ubuntu 而不是 18.04,并且 Docker 版本更新了。 - user1325696
在我的 mbp M1 arm 上无法运行: <jemalloc>:MADV_DONTNEED 不起作用(将使用 memset 代替) <jemalloc>:(如果您在 QEMU 下运行,则这是预期的行为) - nach
非常感谢!这个方法在2023年8月5日对我有效。我建议在exec -it后面写上你的容器ID,而不是"gitlab"(这似乎是基本知识,但可能会让人困惑)。 - Brice Joosten

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接