yktoo Asked: 2019-02-16 01:32:45 +0800 CST2019-02-16 01:32:45 +0800 CST 2019-02-16 01:32:45 +0800 CST 通过远程 X 服务器连接在标题栏中隐藏客户端主机名(Docker 容器 ID) 772 在 Docker 容器中运行 GUI 应用程序时,我正在映射 X11 套接字以使应用程序能够访问主机上的 X 服务器,如下所示: docker run -v /tmp/.X11-unix:/tmp/.X11-unix my_image 问题是默认情况下,WM 将客户端的主机名(在我的情况下是容器的 ID)添加到标题栏: 此 ID 不会为用户增加任何价值。有没有办法摆脱这(effbff37ddd9)部分? 我们使用 Openbox 作为窗口管理器。 docker x11 1 个回答 Voted Best Answer yktoo 2019-02-19T04:02:48+08:002019-02-19T04:02:48+08:00 通过查看 Openbox 的源代码,我可以得出结论,无法隐藏客户端名称部分,因为逻辑在client.c中是硬编码的: if (strcmp(localhost, s) != 0) self->client_machine = s; ... 然后在这里: if (self->client_machine) { visible = g_strdup_printf("%s (%s)", data, self->client_machine); g_free(data); } ... 解决方法 不过有一个解决方法。通过为容器提供一个合理的主机名,可以使其至少不那么烦人,并且可能对用户更有用: docker run ... -h my-app ... 结果:
通过查看 Openbox 的源代码,我可以得出结论,无法隐藏客户端名称部分,因为逻辑在client.c中是硬编码的:
然后在这里:
解决方法
不过有一个解决方法。通过为容器提供一个合理的主机名,可以使其至少不那么烦人,并且可能对用户更有用:
结果: