Docker登录:手动登录专用注册表时出错

时间:2018-07-03 11:16:44

标签: docker docker-compose debian ubuntu-18.04 docker-registry

我无法从CLI手动登录我的私有GitLab Docker注册表:

# docker login -u "${DOCKER_USER}" -p "${DOCKER_PASS}" "${DOCKER_URL}"
error getting credentials - err: exit status 1, out: `Cannot autolaunch D-Bus without X11 $DISPLAY`

系统信息:

  • Ubuntu 18.04
  • docker-ce 18.03.1〜ce〜3-0〜ubuntu(来自官方仓库,不带安装脚本)

任何用户都没有~/.docker/config.json,我以root用户身份执行docker login。 在Google上,我只是找到关于export DISPLAY的建议...码头工人只能在GUI环境中登录到远程注册表吗? 导出DISPLAY = 0:0会产生:

error getting credentials - err: exit status 1, out: `Failed to execute child process “dbus-launch” (No such file or directory)`

我缺少一些依赖吗?否则,Docker可以正常运行,但是登录不起作用。我知道有用于存储凭据的后端,但是我不想存储凭据。我只是想对我的注册表进行身份验证以提取图像,这在Docker ootb中不起作用吗?

1 个答案:

答案 0 :(得分:1)

docker-compose程序包不必要地取决于损坏的golang-github-docker-docker-credential-helpers程序包。删除可执行文件可以解决此问题。

rm /usr/bin/docker-credential-secretservice

注意:这是一种解决方法,每次更新软件包时都需要重复进行。

这会影响Ubuntu 18.04(以及其他非LTS发行版)和某些Debian releases