鱼香ROS介绍:
鱼香ROS是由机器人爱好者共同组成的社区,欢迎一起参与机器人技术交流。 进群加V:fishros2048
文章信息:
标题:docker内部显示Rviz,环境变量配置相关 原文地址:https://fishros.org.cn/forum/topic/53 关键词: 参与者: 609974291,小鱼, 版权声明: 文章中所有知识产权归鱼香ROS及原作者所有。
1. 609974291吃着火锅说:问题反馈:大佬,打扰了,我想咨询个问题。之前看您在b站与古月居合作视频里答疑,docker内部安装ros环境,可以访问Rviz,当时视频中 您export了一个DISPLAY环境变量。我现在也是遇到这个问题,roscore之类的都正常,rviz打不开,提示libGL的错误或者XQb…之类的,困扰了很久,翻阅了很多资料,能否在本机没有nvidia驱动情况下,docker内部打开rviz?需要添加什么环境变量或者有什么踩坑文档之类的推荐一下吗,万分感谢[抱拳]
2. 小鱼听着歌说:@609974291 首先说一下原理,docker对外显示,个人用的比较多的是走X协议。 X协议:用于 UNIX 和 Linux 图形显示的 X 视窗系统协议(X-Window/X Protocol)
看下图可以知道X协议有服务和客户端之分,所以无论是再windows系统还是ubuntu系统,只要建立了X服务,让docker里的容器作为X-client接入即可。
之前和古月合作直播课中,export DISPLAY其实就是告诉xclient,xserver的地址。
明白了这一点,你去搜docker再linux上的可视化方法,就应该知道如何操作了。
再提示一下:
- 在Windows上需要软件来启动Xserver
- Linux系统上自带Xserver,但默认不允许外部的xclient连接,需要使用指令配置
sudo xhost +
最后提供一些文档:
- https://blog.csdn.net/dysh61301601/article/details/3208326
- https://zhuanlan.zhihu.com/p/460494660
祝早日解决问题~欢迎在解决后前来发帖回复解决步骤,帮助其他小伙伴!
3. 小鱼吃着火锅说:@609974291 补充一下你的系统环境哈,不知道你是windows还是linux还是其他系统,不同系统处理方式不太一样,以及你的docker是在虚拟机还是windows中还是ubuntu直接装的?
4. 609974291笑嘻嘻的说:@小鱼 好,我的电脑是ubuntu16.04,docker是直接安装在系统中的,不是虚拟机,docker内部的ros ,是docker pull 拉取的官方给的16.04那个。
5. 小鱼苦兮兮的说:@609974291 首先说一下原理,docker对外显示,个人用的比较多的是走X协议。 X协议:用于 UNIX 和 Linux 图形显示的 X 视窗系统协议(X-Window/X Protocol)
看下图可以知道X协议有服务和客户端之分,所以无论是再windows系统还是ubuntu系统,只要建立了X服务,让docker里的容器作为X-client接入即可。
之前和古月合作直播课中,export DISPLAY其实就是告诉xclient,xserver的地址。
明白了这一点,你去搜docker再linux上的可视化方法,就应该知道如何操作了。
再提示一下:
- 在Windows上需要软件来启动Xserver
- Linux系统上自带Xserver,但默认不允许外部的xclient连接,需要使用指令配置
sudo xhost +
最后提供一些文档:
- https://blog.csdn.net/dysh61301601/article/details/3208326
- https://zhuanlan.zhihu.com/p/460494660
祝早日解决问题~欢迎在解决后前来发帖回复解决步骤,帮助其他小伙伴!