当前位置: 首页 > 知识库问答 >
问题:

泊坞站容器中的 GUI Qt 应用程序

宇文迪
2023-03-14

我尝试通过挂载/tmp/.X11unix在docker容器中运行一些Qt应用程序。我在这里看到这可能很难。

所以当我在docker容器中运行kdevelop时,它不工作(我得到一个空窗口)。但是如果我运行qtcreator,就没问题了。

我觉得区别是因为用的Qt版本(kdevelop用Qt4开发,qtcreator用Qt5)。我的所有其他Qt5应用程序都运行良好,但没有一个Qt4应用程序。

问题:

有没有人知道如何启动Qt4应用程序,而不像使用vnc或ssh那样走很长的路,就像这样:

docker run -it -e DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix someQt4AppContainer

?

共有2个答案

文国发
2023-03-14

尝试使用:

< code >导出QT _ QPA _平台=屏幕外

这将使shell变量对从该shell调用的程序可见。

陶修洁
2023-03-14

Qt5和Qt4有不同的渲染子系统

Qt4渲染器只需要提示:

export QT_GRAPHICSSYSTEM="native"

这一定是工作

QT_GRAPHICSSYSTEM="native" docker run -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix someQt4AppContainer
 类似资料:
  • 我正在码头程序窗口工具包上运行 mariadb 实例。我使用风筝在 mariaDB 容器上进行了一个可取的更改。现在,它重新创建了一个实例,丢失了我所有的数据库。有没有办法从中恢复过来? 检查是否存在悬空卷,并且数量很少 docker音量ls -f悬空=真

  • 因此,我使用boto3 s3和python脚本来列出bucket。 s3_client = boto3.client('s3 ') 当我在桌面上运行它时,它可以正常工作,因为我使用aws配置命令设置aws_access_key_id和aws_secret_access_key。 当我在 AWS 上将其作为容器运行时,我是否需要在使用aws_access_key_id的环境变量和aws_secret

  • 我正在尝试使用Flask和Docker开发一个小型音乐应用程序。我有两个码头服务,都在经营烧瓶。 第一个称为上传器: 第二个渲染了一个Jinja模板,该模板试图播放此API返回的文件: 另外,这些组件工作正常。但当一起使用时,文件不会播放。我已经尝试了我在网上找到的几乎所有东西,但似乎都不起作用。任何帮助将不胜感激。谢谢! 编辑:添加了泊动器撰写文件。两个泊坞窗映像都是在本地构建的。

  • 问题:我目前正在尝试使用KoaJS、Typescript和Docker设置一个新的NodeJS项目。到目前为止,安装工作按计划进行,但远程调试给我带来了一些问题-至少对我的理解是这样的。 如果我启动应用程序并使用“附加到节点.js/ Chrome”调试设置从Webstorm调试器工作...在某种程度上。我遇到了断点,但相同的文件(即内核.ts)再次从泊坞窗工作(在Webstorm中)打开。 它看起

  • 我总是被告知以root用户身份登录是不好的做法。然而,这是Docker在其容器中默认做的事情,因此某些包会打印警告。 我应该切换到标准用户并在我的容器中使用sudo吗?或者这并不比在Docker容器中使用root用户有什么好处? 我的容器运行的是php8.1:apache(在Debian 11上),我在我网站的服务器上使用它。它有两个打开的端口和一个共享卷(在< code>/var/www/hmt

  • 我正在开发一个服务,并使用docker compose来旋转服务,如postgres,redis,elasticsearch。我有一个基于RubyOnRails的web应用程序,可以读写所有这些服务。 这是我的docker-compose.yml 我可以ping这个网络中的容器 到目前为止一切顺利。现在,我想在我的主机上运行ruby on rails应用程序,但是能够使用类似< code > Po