本方法仅适用于postgres数据库,且能正常登录服务器 本方法使用ssh进行重置密码,教程开始: 第一步 查询数据库用户名

docker inspect postgres | grep -i user
你会得到一个POSTGRES_USER=xxx的回复 第二步 进入数据库

docker exec -it postgres psql -U 你的实际用户名 -d new-api
实际用户名就是刚刚POSTGRES_USER的值 进入后如下ssh显示由root@xxx#变成new-api=# 第三步 查看用户

SELECT id, username, email, role, status FROM users;
你会得到这个回复 id | username | email | role | status role下为100的为超级管理员用户 username 为你的账号名 第四步 查询密码

SELECT id, username, password FROM users;
结果为 id | username | password Password下为你的密码,结果是加密过的,假如你有其他账号并且还记得密码可以在下一步直接用,或者是如果你开启了注册账号,可以先注册账号在查看新账号的密码 第五步 重置密码 UPDATE users SET password = ‘你需要设置的密码’ WHERE username = ‘你的实际用户名’; 网上有说密码空着会变成默认123456或者不用密码进入,我实测是不行 鉴于有的人运气极其不好,忘记了密码没有其他账户还关闭了注册可以使用如下:$2a$10$EUYux167LHHP7Rot3t6YfuDan0OFqdpJMQT6gE1xo22pzO1UGLfc6 此对应密码为a123456789 也就是

UPDATE users SET password = ‘$2a$10$EUYux167LHHP7Rot3t6YfuDan0OFqdpJMQT6gE1xo22pzO1UGLfc6’ WHERE username = ‘你的实际用户名’;
第六步 重启服务 \q 退出 此时应显示为root@xxx# docker restart new-api 重启容器

Date:
Words:
411
Time to read:
2 mins