Docker 如何在openproject Docked中重置管理员密码

Docker 如何在openproject Docked中重置管理员密码,docker,openproject,Docker,Openproject,我使用docker在CentOS 7中安装了openproject。 我更改了管理员密码,然后忘记了 如何重置它?如果设置允许(这是默认设置),最简单的解决方案是转到OpenProject安装的登录页面(https://[host]/login),并使用“忘记密码”命令链接以将密码重置令牌发送到为管理员帐户配置的电子邮件地址 如果该选项不存在,则必须连接到docker容器以在其上获取终端窗口,例如,通过以下方式 打开bash后,发布: sudo openproject run rails con

我使用docker在CentOS 7中安装了openproject。 我更改了管理员密码,然后忘记了

如何重置它?

如果设置允许(这是默认设置),最简单的解决方案是转到OpenProject安装的登录页面(
https://[host]/login
),并使用“忘记密码”命令链接以将密码重置令牌发送到为管理员帐户配置的电子邮件地址

如果该选项不存在,则必须连接到docker容器以在其上获取终端窗口,例如,通过以下方式

打开bash后,发布:

sudo openproject run rails console
这将为您打开rails控制台

一旦进入,发布:

#检索第一个管理员帐户
admin=User.where(admin:true)。首先
#更改密码
admin.password=admin.password\u confirmation=“[您选择的密码]”
#保存更改,忽略任何错误
admin.save(验证:false)
如果您在安装中有多个管理员帐户,您必须在第一步缩小正确的帐户范围,例如

#打印所有管理员帐户的列表
pp User.where(admin:true).pull(:id,:login,:firstname,:lastname,:mail)
#按id获取管理员帐户
admin=用户。其中(id:“[id]”)

对于较新版本的OpenProject,似乎不起作用,但我成功地使用了以下信息:

  • 查找容器ID:
    docker ps
  • 以root用户身份连接到docker容器:
    docker exec-u root-it/bin/bash
  • 使用rails控制台更改用户密码:
    RAILS\u ENV=production bundle exec RAILS c
    u=User.find_by_登录名“admin”
    u、 password=u.password\u confirmation='my new password'
    u、 拯救
    
  • (按Ctrl-D键,直到回到常规终端。)

  • 您好,我正在尝试使用您的解决方案,但出现错误:root@ee12ce60a11b:/app#sudo openproject运行rails控制台bash:sudo:未找到命令root@ee12ce60a11b:/app#openproject运行rails控制台bash:openproject:command not found``我假设sudo没有安装。您可以通过以root身份连接到docker容器来解决此问题:我以root身份连接,但是:
    /app#openproject run rails console
    会导致
    bash:openproject:command not found