Nginx Proxy Manager忘记登陆账号/密码了怎么办?

Nginx Proxy Manager忘记登陆账号/密码了怎么办?

Administrator 4289 2022-07-18

根据官方的issues详细的回答,做一个简单的中文记录。

步骤1

在运行包含数据库的docker容器的机器上运行这些命令。

docker exec -it npm sh  # npm这边改成你自己的容器名,可以通过docker ps 查看到
mysql -u root -p

然后你需要输入当时给数据库设置的root密码。

输入完密码之后,继续输入以下命令:

USE npm;
UPDATE user SET is_deleted=1;
quit
exit

步骤2

如果你的NPM容器一直在运行,现在可以重新启动它。如果它还没有运行,现在就启动它。

步骤3

在浏览器中访问你的NPM,用下面的账号密码登录:

登录: admin@example.com
密码: changeme

步骤4

不出意外的话,你现在已经创建了一个可以登录的管理员用户。

你可以选择以后只使用这个用户作为管理员,或者如果你之前的账户设置过网站的代理,你想要重新恢复之前那些设置的网站,(即启用旧账户),那么可以执行以下命令:

docker exec -it npm sh   # 同上,npm这边改成你自己的容器名
mysql -u root -p 

再次输入root密码,如步骤1:

USE npm;
UPDATE user SET is_deleted=0;
quit
exit

不出意外,现在你就已经恢复了之前创建的代理网站了。

参考资料:

https://github.com/NginxProxyManager/nginx-proxy-manager/issues/230