Cant connect to my local robotic backend

Im running docker inside WSL2 using ubuntu 24.04.2 LTS, the command that im using to run the docker container is this:

sudo docker run --rm -it -p 6080:6080 -p 1108:1108 -p 7163:7163 jderobot/robotics-backend:latest.

And this is the output:

— GPU acceleration info — GPUs found: 873c:00:00.0 3D controller [0302]: Microsoft Corporation Device [1414:008e] WARNING: nvidia-smi not available or failed, skipping NVIDIA GPU. WARNING: ‘Microsoft’ vendor found, but no GPU in /dev/dri directory. Warning: No GPU found for valid vendors: ‘nvidia amd intel microsoft’ Falling back to CPU-only mode ----------------------------- 10:54:04 [MainThread ] [INFO ] (my_app_logger) Starting RAM consumer in <manager.comms.websocker_server.WebsocketServer object at 0x7fe9c087f100>:7163 INFO:manager.comms.websocker_server:Listening on port 7163 for clients… INFO:manager.comms.websocker_server:Starting WebsocketServer on thread Thread-1 (serve_forever).

From my point of view seems to be working fine, but when i enter into unibotics.org web i cant find my local environment:

2025-03-08 12_24_39-Unibotics - Brave

And when i try to work in some exercise i am in the connecting to robotics backend state all the time.

BR and thank you in advance

The Robotics Backend is properly selected in your user profile. The right one is the only one available in your case: Local ROS2. Could you post a snapshot of your screen while “connecting” to the RoboticsBackend?

In addition, try with RoboticsBackend 4.8.0.

Does it also get stalled when entering into another exercise? (for instance the FollowLine exercise)

Can you remove the docker container and download it again?

With the one you download using your command

docker run --rm -it -p 6080:6080 -p 1108:1108 -p 7163:7163 jderobot/robotics-backend:latest

works fine.

You probably have an older latest version than the one that is currently uploaded. You can also upload it using docker pull jderobot/robotics-backend:latest.

Hi again, using jderobot/robotics-backend:4.8.0 instead of the latest one i got the same result.
I also tried removing the container and downloading it again but no changes

Hi Alberto:

I’m Carlos, a Windows Unibotics developer. I’ve tried to recreate this error on my behalf, but I couldn’t. What are your PC’s specifications?

Nonetheless, please try again with this command:

sudo docker run --rm -it --gpus all -v /usr/lib/wsl:/usr/lib/wsl -e LD_LIBRARY_PATH=/usr/lib/wsl/lib --device /dev/dri -p 6080:6080 -p 1108:1108 -p 7163:7163 jderobot/robotics-backend:4.8.0

This launch command will use GPU acceleration on windows too. Please give this a try. It may be a problem with the resources used.

I hope you found this message useful. If you still have problems, we are at your disposal.

Best regards,
Carlos.

Hi Carlos, nice to meet you.

I tried with your command, but without succes:

sudo docker run --rm -it-gpus all -v /usr/lib/wsl:/usr/lib/wsl -e LD_LIBRARY_PATH=/usr/lib/wsl/lib --device /dev/dri -p 6080:6080 -p 1108:1108 -p 7163:7163 jderobot/robotics-backend:4.8.0 docker: Error response from daemon: error while creating mount source path ‘/usr/lib/wsl’: mkdir /usr/lib/wsl: read-only file system.

I tried in several ways, such as with another distribution (ubuntu 24.04) or with a VM of virtualbox but always without connection.

Nombre del dispositivo AR-PC
Procesador Intel(R) Core™ i7-8700 CPU @ 3.20GHz 3.19 GHz
RAM instalada 16,0 GB

|Tipo de sistema|Sistema operativo de 64 bits, procesador basado en x64|

Hi Alberto,

Let’s see if we can help. Could you test after removing the sudo from the docker run command? Also, in order to check if you have proper access to the directories required for GPU acceleration within the docker, could you share the output of running ls /usr/lib/wsl/ and ls /dev/dri?

Thanks!

Hi,

Here you have the results:

ruiz17@AR-PC:~$ ls /usr/lib/wsl drivers lib wsl-setup ruiz17@AR-PC:~$ ls /dev/dri by-path card0 renderD128

I also tried without sudo but anything changed

Without any backgroud or previous experiencie, from my point of view seems to be some permission that in somewhere i need to give, to something related with the ports, but as i said, is just my point of view and im not any expert of this topic.

I checked this port topic, on the navigator console and i saw this:

I have run a command that i found on internet to check that port and seems to be connection:

PS C:\Users\Usuario> Test-NetConnection 127.0.0.1 -Port 7163 ComputerName : 127.0.0.1 RemoteAddress : 127.0.0.1 RemotePort : 7163 InterfaceAlias : Loopback Pseudo-Interface 1 SourceAddress : 127.0.0.1 TcpTestSucceeded : True

BR and thank you for all your efforts

Hi Alberto,

I have been testing today your problem in my pc using wsl 2 with ubuntu 24.04 in windows 11. I have an Intel 12th gen processor and a Nvidia 1060 6GB

I am using docker desktop 4.37.1, wich is not the latest version but that should not be a problem.

In the docker console I opened a container with the following command:
docker run --rm -it --gpus all -v /usr/lib/wsl:/usr/lib/wsl -e LD_LIBRARY_PATH=/usr/lib/wsl/lib --device /dev/dri -p 6080:6080 -p 1108:1108 -p 7163:7163 jderobot/robotics-backend:4.8.0

Once the container was opened I went into unibotics to play the marker visual localization excercise with a known functional solution. The simulation runned well so I recommend you to follow the exact same steps I did, so at least you can discard the installation, setup and docker malfunction.

I hope that this helps you solve the problem.

Hi all, first of all thank you for all your help.Finally im working from another computer so at least im not blocked, i still dont know the reason of why my computer cant connect to the robotic backend, anyway, as i said thank you all for the recomendations.

BR
Alberto Ruiz

Hi all again, lets try this another time xD.
The docker backend seems to be launched in a good way. I have got this output when i run this command: docker run --rm -it --gpus all -v /usr/lib/wsl:/usr/lib/wsl -e LD_LIBRARY_PATH=/usr/lib/w
sl/lib --device /dev/dri -p 6080:6080 -p 1108:1108 -p 7163:7163 jderobot/robotics-backend:4.8.1

output:

— GPU acceleration info —
GPUs found:
f002:00:00.0 3D controller [0302]: Microsoft Corporation Device [1414:008e]
INFO: GPU candidates found at /dev/dri/card0 (keeping /dev/dri/card0).
INFO: ‘nvidia-smi’ available. Most likely an NVIDIA GPU in WSL.
GPU selected:
f002:00:00.0 3D controller [0302]: Microsoft Corporation Device [1414:008e]
DRI_VENDOR: microsoft
DRI_NAME: card0

20:05:03 [MainThread ] [INFO ] (my_app_logger) Starting RAM consumer in <manager.comms.websocker_server.WebsocketServer object at 0x7f109737f8b0>:7163
INFO:manager.comms.websocker_server:Listening on port 7163 for clients…
INFO:manager.comms.websocker_server:Starting WebsocketServer on thread Thread-1 (serve_forever).

I tried this with docker desktop and with wsl, both of them with the same result.
I tried to connect with different browsers and also using incognito mode, but i didnt have success in any try.

Im using W10, if somebody of you requires any info dont hesitate to ask me.

BR