无法在 Docker 容器中为 X11 自动启动没有 $DISPLAY 的 dbus-daemon

Posted

技术标签:

【中文标题】无法在 Docker 容器中为 X11 自动启动没有 $DISPLAY 的 dbus-daemon【英文标题】:Unable to autolaunch a dbus-daemon without a $DISPLAY for X11 in Docker container 【发布时间】:2016-09-14 20:33:07 【问题描述】:

我正在尝试在 docker ubuntu 容器中安装 OpenJDK8,但我仍然收到此错误:

(gconftool-2:4389): GConf-WARNING **: 
Client failed to connect to the D-BUS daemon:
Unable to autolaunch a dbus-daemon without a $DISPLAY for X11

我该如何解决这个错误?

【问题讨论】:

【参考方案1】:

您可以将 DISPLAY 变量设置为 X 服务器(例如您的主机上的那个),但是安装 openjdk 8 可以在没有 X 服务器的情况下完成。 你可以以官方的java:openjdk-8 镜像为例说明如何做到这一点,它的 Dockerfile 在这里:https://github.com/docker-library/openjdk/blob/master/8-jdk/Dockerfile

【讨论】:

以上是关于无法在 Docker 容器中为 X11 自动启动没有 $DISPLAY 的 dbus-daemon的主要内容,如果未能解决你的问题,请参考以下文章

docker容器的启动删除,杀进程,自动重启等操作

如何避免Docker容器启动脚本运行后自动退出

docker容器自动启动及修改配置文件

为啥docker容器内无法启动tomcat,容器外可以

使用 X11 在 docker 内运行 GUI 应用程序不起作用

Git + libsecret 抛出“没有 X11 $DISPLAY 无法自动启动 D-Bus”