自部署的 Bitwarden ,登录时提示密码错误

  • 昨天临睡前,因为网络原因,浏览器里 Bitwarden 插件的登录状态掉了,本来想重新登录上,结果发现总是提示用户名或密码错误。

  • 当然,我很确定我的密码是正确的,为了验证问题,我特意去网页端登录了一下,没任何问题。很显然问题出在插件和服务端之间。

  • 首先怀疑是插件因为网络原因,导致本地缓存或者是哪里出问题了,卸载掉再重装问题依旧。这次判断可能是服务端问题,登上去把 Docker 镜像重启了一下,问题依旧。

  • 这下终于想起来去项目的 GIthub 上瞅瞅了, dani-garcia/vaultwarden: Unofficial Bitwarden compatible server written in Rust, formerly known as bitwarden_rs (github.com)

  • 果然,Issues 最顶上就是作者的提示, [NOTE] ⚠️ Client fails to connect or login ⚠️ · Issue #3082 · dani-garcia/vaultwarden (github.com)

  • 大意是出现这个问题很可能是服务端不是最新的,Bitwarden 拓展和应用更新后与之前的服务端兼容性有问题,如果没有更新到最新,就先不要开 Issue 提交问题,巴拉巴拉。

  • 登上服务器,更新 docker 镜像:

    docker-compose stop
    docker-compose pull
    docker-compose up -d --build
    

    劈里啪啦一条龙,很快嘛,然后发现还没好……什么鬼。

  • 老老实实 docker exec bitwardenrs /vaultwarden --version​​ ​去验证版本号,果然没更新,旧版本。

    • PS. bitwardenrs​ 是容器名称,运行命令时记得改成自己的
  • 打开docker-compose.yml​ 发现镜像是 bitwardenrs/server:latest​,然而这个镜像已经被弃用了, 新镜像名字是 vaultwarden/server:latest​,修改镜像的名字后,再次更新,终于正常了。

  • Bitwardenrs 这个自部署的开源项目改名的事情我是知道的,记得当时还写了一个笔记作为记录,结果没想到 docker-compose.yml 配置文件中的镜像名字居然没修改,真是出乎意料之外。