ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
1

Can you install Noetic with Docker on a Raspberry Pi?

asked 2020-08-09 20:04:08 -0500

Kansai gravatar image

updated 2021-04-23 08:57:45 -0500

miura gravatar image

I have installed (well, actually build and run a container) Kinetic and also ROS2 eloquent with docker on my raspberry pi. I am trying to do the same with Noetic but failing. Is it possible to have a Noetic container in RPi?

(For reference I write here other info)

  1. I have build and run a Noetic container in a desktop ubuntu machine
  2. I have read that you can install Noetic on a RPi natively
  3. I have failed doing the following:

.

 $docker pull ros:noetic

No problem here

$docker image ls

I can see the image

$docker run -it ros:noetic
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>
edit retag flag offensive close merge delete

Comments

1

Could you give more details on your setup:

  • what RaspberryPi model are you using?
  • What is your host operating system?
  • Is your OS 32 or 64 bits?
  • What is your kernel version?

Can you clarify which images you built yourself vs pulled directly from dockerhub ? and why you needed to build them as opposed to using the ones upstream?

For an additional datapoint, I have a RPi 4B+ running ubuntu server 20.04 64bits and it successfully runs ros:noetic, ros:melodicand ros:eloquent containers out-of-the-box

marguedas gravatar image marguedas  ( 2020-08-10 11:10:55 -0500 )edit

...same problem here on a Pi 3B+ and latest Hypriot

Got the image via:

docker pull arm32v7/ros:noetic-ros-base

WaldoPepper gravatar image WaldoPepper  ( 2020-08-24 08:48:04 -0500 )edit

2 Answers

Sort by ยป oldest newest most voted
1

answered 2020-10-20 19:42:03 -0500

canderson gravatar image

updated 2020-10-20 20:05:32 -0500

;tldr try --security-opt seccomp:unconfined in your docker run command

I am running into this issue as well with the ros:noetic-ros-core-focal as well as ros:noetic builds straight from dockerhub

docker run -it --rm ros:noetic-ros-core-focal bash
    Fatal Python error: pyinit_main: can't initialize time
    Python runtime state: core initialized
    PermissionError: [Errno 1] Operation not permitted

I think this issue is definitely tied to the arm32 architecture as I successfully performed the above test on arm64 and amd64 architectures. I also tried installing straight from ubuntu:focal following ros.org installation instructions, but there seems to be an issue with that too, as highlighted here : https://askubuntu.com/questions/12632...

After all this, what ended up working for me was running with the --security-opt seccomp:unconfined option. This appears to be tied to some issue with libseccomp package that is breaking debian builds for arm32.

docker run --rm --name noetic-dev -it --security-opt seccomp:unconfined ros:noetic bash

edit flag offensive delete link more
0

answered 2020-08-10 01:35:45 -0500

titouanlh gravatar image

Maybe you could try the arm32v7 image : https://hub.docker.com/r/arm32v7/ros ?

edit flag offensive delete link more

Question Tools

2 followers

Stats

Asked: 2020-08-09 20:04:08 -0500

Seen: 1,560 times

Last updated: Oct 20 '20