Gazebo | Ignition | Community
Ask Your Question

ajthor's profile - activity

2019-04-06 14:34:47 -0500 received badge  Student (source)
2018-04-10 02:11:07 -0500 received badge  Taxonomist
2017-04-04 19:10:09 -0500 received badge  Famous Question (source)
2017-03-29 11:24:55 -0500 received badge  Notable Question (source)
2017-03-28 19:46:36 -0500 commented answer Problem connecting to docker container using gzclient

Could you please stop posting answers when these should really be comments? Your solution still doesn't work. I set the environment variables to point to the correct location. I've tried: localhost, the loopback address, the container's IP, the bound address, etc. Please refer to the original question where I state the only environment variable that doesn't give me an error is GAZEBO_MASTER_URI=localhost:11345

2017-03-28 19:40:37 -0500 received badge  Popular Question (source)
2017-03-28 17:28:32 -0500 commented answer Problem connecting to docker container using gzclient

The output from starting `gzserver` is up there in the second block. Gazebo multi-robot simulator, version 8.0.0 Copyright (C) 2012 Open Source Robotics Foundation. Released under the Apache 2 License. http://gazebosim.org [Msg] Waiting for master. [Msg] Connected to gazebo master @ http://127.0.0.1:11345 [Msg] Publicized address: 192.168.0.5 And changing the server to point to the host's IP, 192.168.0.5, doesn't help, either.

2017-03-26 13:16:29 -0500 asked a question Problem connecting to docker container using gzclient

I'm trying to connect to gzserver running in a docker container and I'm running into trouble starting gzclient. I can run the demo pendulum simulation from gazebo's docker hub page, and I can get the logs just fine and play them back. The problem is connecting to gzserver from the host machine. The strange thing is, I can start gzserver just fine, but I can't seem to start up gzclient. It just hangs on startup and the splash screen never goes away. Usually if I leave it for ~10 minutes, it will exit with the error below.

With the container running, port 11345 published, and $GAZEBO_MASTER_URI=localhost:11345, gazebo will not start because it detects a conflict with the other server.

$ gazebo --verbose debug:=true
Gazebo multi-robot simulator, version 8.0.0
Copyright (C) 2012 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org

[Msg] Waiting for master.
Gazebo multi-robot simulator, version 8.0.0
Copyright (C) 2012 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org

[Err] [Master.cc:96] EXCEPTION: Unable to start server[bind: Address already in use]. There is probably another Gazebo process running.

[Err] [Master.cc:96] EXCEPTION: Unable to start server[bind: Address already in use]. There is probably another Gazebo process running.

When you stop the docker container, gazebo and gzserver will start.

$ gazebo --verbose --play ./logs/log/*/gzserver/state.log debug:=true
Gazebo multi-robot simulator, version 8.0.0
Copyright (C) 2012 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org

[Msg] Waiting for master.
Gazebo multi-robot simulator, version 8.0.0
Copyright (C) 2012 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org

[Msg] Waiting for master.
[Msg] Connected to gazebo master @ http://127.0.0.1:11345
[Msg] Publicized address: 192.168.0.5
[Msg]
Log playback:
  Log Version: 1.0
  Gazebo Version: 8.0.0
  Random Seed: 3419886574
  Log Start Time: 0 388000000
  Log End Time: 10 741000000
[Msg] Connected to gazebo master @ http://127.0.0.1:11345
[Msg] Publicized address: 192.168.0.5

However, if you try to run gzclient when the docker container is up, you get the following result:

$ gzclient --verbose debug:=true
Gazebo multi-robot simulator, version 8.0.0
Copyright (C) 2012 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org

[Msg] Waiting for master.
[Msg] Connected to gazebo master @ http://127.0.0.1:11345
[Msg] Publicized address: 192.168.0.5
[Wrn] [Publisher.cc:141] Queue limit reached for topic /gazebo/default/user_camera/pose, deleting message. This warning is printed only once.

And then after ~10 minutes:

libc++abi.dylib: terminating with uncaught exception of type boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::lock_error> >: boost: mutex lock failed in pthread_mutex_lock: Invalid argument
Abort trap: 6

I've tried every viable combination of the environment variables I know. This one is the only one where gzclient doesn't ... (more)