Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Problems when Installing Noetic in Raspberry pi with Docker

Background: I have been able to build and run ROS kinetic and ROS2 eloquent containers in my Raspberry Pi4 in the past.

I am trying to build and run ROS noetic. However I am getting an error. To show this I do the most simple things

docker pull ros:noetic

then I do

docker image ls

and I can see that the image is there

but when I do

docker run -it ros:noetic

I get

Fatal Python error: pyinit_main: can't initialize time
Python runtime state: core initialized
PermissionError: [Errno 1] Operation not permitted

Current thread 0xb6ff1460 (most recent call first):
<no Python frame>

I wonder what is happening and how to solve this

My suspicion is that since noetic is using Python 3 and not 2, something is failing due to versions

Comments: I know that ROS kinetic uses python 2 but I assumed ROS2 eloquent used Python 3! Now I found that it uses python 2 too!

MORE Information:

I have been able to build and run ROS noetic containers in my Ubuntu desktop machine. So I imagine it is a raspberry pi problem. However it seems that it is possible to install noetic natively on RPi, so I wonder if it is a problem with the Noetic Docker image...

like image 516
KansaiRobot Avatar asked Dec 31 '22 22:12

KansaiRobot


2 Answers

I had the exact same issue and the following workaround worked:

docker run --privileged

Docker documentation on --privileged switch

like image 190
tbaxx Avatar answered Jan 06 '23 02:01

tbaxx


Next commands on host machine, helped me out:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 04EE7237B7D453EC 648ACFD622F3D138
echo "deb http://deb.debian.org/debian buster-backports main" | sudo tee -a /etc/apt/sources.list.d/buster-backports.list
sudo apt update
sudo apt install -t buster-backports libseccomp2 
like image 30
Taras Vaskiv Avatar answered Jan 06 '23 01:01

Taras Vaskiv