Docker login失败问题的处理

先是在一台安装了docker 18的机器上发现无法登录,报错为:

Remote error from secret service: org.freedesktop.Secret.Error.IsLocked: Cannot create an item in a locked collection

放狗搜了半天,有人说是BUG,但没有找到解决方案。

但是在另一台用docker 17的机器上是没问题的,所以决定重装回docker 17。

然而不幸的是装完docker 17又出了新的问题:

Cannot autolaunch D-Bus without X11 $DISPLAY

简直莫名其妙,我没用到X11啊。

反复重装了17和18好几遍,都重复这个错误,只好再放狗搜一下。找到SO上这个方案

sudo apt install gnupg2 pass 
gpg2 --full-generate-key
# 上面这个命令生成需要一些真随机条件,所以需要在电脑上多操作(比如乱打键盘、乱动鼠标、乱操作磁盘)。然而因为我是连远程服务器,无法操作本地键盘和鼠标,远程键盘和鼠标好像是没用的,所以只能另开一个窗口操作磁盘。
# 下面的命令显示生成的密钥信息
gpg2 -k
# 把上面显示结果中的[uid]后面的部分复制到下面的命令里
pass init "[uid]内容"

现在就可以登录了,docker 18也可以。


更新:

最新的实践是,只要安装了gnupg2和pass即可,不需要再跑后面那些命令了。

推送到[go4pro.org]