重置管理员密码
本页提供 Docker 部署和本地安装两种场景下重置管理员密码的方法。
Docker 部署
第 1 步:生成新密码哈希
把 your-new-password 换成你想设置的新密码:
htpasswd -bnBC 10 "" your-new-password | tr -d ':\n'备注
输出的是 bcrypt 哈希,里面可能包含特殊字符。如果你要把它直接带入下一步 Docker 命令,其中的 $ 需要做三重转义,替换成 \\\。
第 2 步:更新 Docker 中的密码
把下面命令中的 HASH 替换为上一步生成的哈希,admin@example.com 替换成管理员邮箱:
docker run --rm -v open-webui:/data alpine/socat EXEC:"bash -c 'apk add sqlite && echo UPDATE auth SET password='\''HASH'\'' WHERE email='\''admin@example.com'\''; | sqlite3 /data/webui.db'", STDIO如果这个命令失败,可以使用下 面的备用方法。
备用 Docker 方法
某些环境中,alpine/socat 镜像没有 bash,导致一行命令失败。可以改成分步操作:
- 启动一个挂载了 OPL 数据空间数据卷的 Alpine 容器:
docker run -it --rm -v open-webui:/data alpine- 安装所需工具:
apk add apache2-utils sqlite- 生成 bcrypt 哈希:
htpasswd -bnBC 10 "" your-new-password | tr -d ':'- 更新密码:
sqlite3 /data/webui.dbUPDATE auth SET password='HASH' WHERE email='admin@example.com';