Running Gazebo and ROS on a remote instance
First off, let me say that I know that similar questions have been asked before, but I have been unable to find any answers that actually solve my problem.
I am trying to run Gazebo and the associated gazebo_ros package on a headless OpenStack instance, and using the gzweb
software to access it through a browser. I do not need gzclient
to be running on this instance at all. When I run the following command:
roslaunch gazebo_ros empty_world.launch
it gives me the following error:
Error [RenderEngine.cc:680] Unable to create glx visual
Warning [RenderEngine.cc:88] Unable to create X window. Rendering will be disabled
Other similar questions (such as here and here) suggest using DISPLAY=:0
, but when I add this into the command as follows:
DISPLAY=:0 roslaunch gazebo_ros empty_world.launch
it gives me a different error:
Error [RenderEngine.cc:665] Can't open display: :0
Warning [RenderEngine.cc:88] Unable to create X window. Rendering will be disabled
I have also tried setting
<arg name="gui" default="false"/>
<arg name="headless" default="true"/>
in the empty_world.launch file, but no luck. I'm pulling my hair out here trying to get this thing working. Any advice would be hugely appreciated.