I think this is kind of working but there are still some unsolved issues. I do report below.
1- There are still some errors with sphinx-server
On the host on which I’m running the docker container, I still get some errors with sphinx-server
[Err] [Socket.cc:174] Socket 65 hung up
pomp: recvmsg(fd=64) err=104(Connection reset by peer)
31m[Err] [Socket.cc:174] Socket 65 hung up
E pomp: recvmsg(fd=64) err=104(Connection reset by peer)
I found other threads on the forum linking this to the nvidia driver ? I thought the nvidia drivers were correctly used (as seen from glxinfo and the volume /usr/lib/nvidia-410 being mounted from the host) . There may be something else.
2- The simulation seems to be running and image published
On the other hand, I did ping the simulation by logging into the container
fix_jer@host:$ docker -it friendly_poincare /bin/bash
root@sh15:$ gz stats
Factor[0.20] SimTime[118.91] RealTime[484.23] Paused[F]
Factor[0.23] SimTime[118.98] RealTime[484.51] Paused[F]
Factor[0.23] SimTime[119.04] RealTime[484.77] Paused[F]
Factor[0.23] SimTime[119.10] RealTime[485.04] Paused[F]
Factor[0.24] SimTime[119.18] RealTime[485.31] Paused[F]
root@sh15:$ gz topic --hz /gazebo/default/bebop2/body/horizontal_camera/image
I did not try to grab the image from within the container though .
3 - How would I connect from a client different from the docker host ?
My last point is to find my way to connect to the simulated drone from outside the host.
On my host, I do see some new interfaces (enp4s0 being the physical one).
docker0 Link encap:Ethernet HWaddr.....
inet addr:172.17.0.1 Bcast:172.17.255.255 Mask:255.255.0.0
enp4s0 Link encap:Ethernet HWaddr ........
inet addr:192.168.10.79 Bcast:192.168.10.255 Mask:255.255.255.0
fd_veth0 Link encap:Ethernet HWaddr .....
inet addr:10.202.0.254 Bcast:0.0.0.0 Mask:255.255.255.0
I can ping the drone, the IP supposedly being
fix_jer@host$ ping 10.202.0.1
PING 10.202.0.1 (10.202.0.1) 56(84) bytes of data.
64 bytes from 10.202.0.1: icmp_seq=1 ttl=64 time=0.059 ms
Now, given a client different from the host running the container, I’m not sure which traffic I should probably locally route from enp4s0 to fd_veth0.