Docker 码头上的Rviz堆芯卸载

Docker 码头上的Rviz堆芯卸载,docker,ros,Docker,Ros,我正在使用tensorflow/tensorflow docker并在其上安装了ros。这是我的照片: 我运行我的docker映像为 docker run --runtime=nvidia -it mpkuse/kusevisionkit:v0.4 bash 我可以运行roscore,rqt_图像的gui也可以正确显示。但是我不能运行rviz。这是我的错误: root@2fe10a6154c8:/app# rviz [ INFO] [1539052958.662758017]: rviz v

我正在使用tensorflow/tensorflow docker并在其上安装了ros。这是我的照片:

我运行我的docker映像为

docker run --runtime=nvidia -it mpkuse/kusevisionkit:v0.4 bash 
我可以运行roscore,rqt_图像的gui也可以正确显示。但是我不能运行rviz。这是我的错误:

root@2fe10a6154c8:/app# rviz
[ INFO] [1539052958.662758017]: rviz version 1.12.16
[ INFO] [1539052958.662820468]: compiled against Qt version 5.5.1
[ INFO] [1539052958.662838215]: compiled against OGRE version 1.9.0 (Ghadamon)
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
Could not initialize OpenGL for RasterGLSurface, reverting to RasterSurface.
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
Segmentation fault (core dumped)

如何从docker中运行rviz?

在docker容器中,您不能以常规方式打开类似rviz的GUI应用程序

最简单的方法是公开xhost,以便容器可以呈现给 通过X11 UNIX进行读写操作,以获得正确的显示 插座

docker run -it \
    --env="DISPLAY" \
    --env="QT_X11_NO_MITSHM=1" \
    --volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" \
    osrf/ros:indigo-desktop-full \
    rqt
export containerId=$(docker ps -l -q)

[更新]:

  • 更完整的是在这方面

  • 同样,这是相似的

  • 在这个平台上,您可以在Docker容器上安装GUI应用程序,如Rviz应用程序


我想你不能在Docker容器中打开像RViz这样的GUI应用程序。这可能会对你有所帮助。我更新了我的答案。我可以从Docker运行rqt_图。但rviz仍然崩溃。是的,我已经在集装箱上安装了ros,我运行您的命令。有了它,我可以运行rqt_图。rqt_图形在容器上运行并显示在主机上。roscore在容器上运行。但是,当我运行rviz时,会出现seg故障