3

I'm using Buildroot on a CM4. My intentions are to run Docker/OCI containers on that RPi CM4 board.

I've enabled containerd as well as docker-engine/devicemapper filesystem driver and docker-engine/vfs filesystem driver, as well as docker-cli.

Which one I end up using eventually is a problem I'll tackle in the future, for now I just want to get containers to run.

After the image is built and the CM4 is flashed and is running, I log in onto it, and run containerd.

Once containerd is running I log in onto the CM4 with another terminal and try to run a simple image:

# ctr image pull docker.io/library/hello-world:latest
docker.io/library/hello-world:latest:                                             resolved       |++++++++++++++++++++++++++++++++++++++| 
index-sha256:aa0cc8055b82dc2509bed2e19b275c8f463506616377219d9642221ab53cf9fe:    done           |++++++++++++++++++++++++++++++++++++++| 
manifest-sha256:432f982638b3aefab73cc58ab28f5c16e96fdb504e8c134fc58dff4bae8bf338: done           |++++++++++++++++++++++++++++++++++++++| 
layer-sha256:7050e35b49f5e348c4809f5eff915842962cb813f32062d3bbdd35c750dd7d01:    done           |++++++++++++++++++++++++++++++++++++++| 
config-sha256:46331d942d6350436f64e614d75725f6de3bb5c63e266e236e04389820a234c4:   done           |++++++++++++++++++++++++++++++++++++++| 
elapsed: 1.0 s                                                                    total:   0.0 B (0.0 B/s)                                         
unpacking linux/arm64/v8 sha256:aa0cc8055b82dc2509bed2e19b275c8f463506616377219d9642221ab53cf9fe...
done: 47.228768ms   

And then I'm trying to run it:

# ctr run  docker.io/library/hello-world:latest test
ctr: failed to mount /tmp/containerd-mount524001853: no such device

While running containerd I'm getting a warning:

WARN[2023-01-13T12:17:47.872841054+01:00] failed to load plugin io.containerd.snapshotter.v1.devmapper  error="devmapper not configured"
…
WARN[2023-01-13T12:17:47.877784363+01:00] could not use snapshotter devmapper in metadata plugin  error="devmapper not configured"

This is where I got stuck.

I don't use snapshotter, so I tended to disregard that problem.

Is there a way to force ephemeral running of images, such that no filesystem support for some sort of overlay fs is required?

Or am I hunting a red herring entirely, and I should first configure devmapper first?

I read conflicting information about cgroup, do I need to compile it in Buildroot, or is it optional?


Additional info:

runc --version:

runc version 1.1.4
spec: 1.0.2-dev
go: go1.19.3

ctr --version:

ctr github.com/containerd/containerd 1.6.8

containerd --version:

containerd github.com/containerd/containerd 1.6.8

cat /proc/version:

Linux version 5.10.110-v8 (polemon@desk) (aarch64-buildroot-linux-gnu-gcc.br_real (Buildroot 2022.11-rc2-dirty) 12.2.0, GNU ld (GNU Binutils) 2.38) #8 SMP PREEMPT Wed Jan 11 16:59:36 CET 2023
polemon
  • 131
  • 3

0 Answers0