Docker issues after upgrade to Bullseye

Hi Sam,

It does not seems to work :

osmc@vero:~/docker$ docker run hello-world
docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error setting cgroup config for procHooks process: bpf_prog_query(BPF_CGROUP_DEVICE) failed: invalid argument: unknown.
ERRO[0000] error waiting for container: context canceled

:confused:

I Think I’ve done the update correctly.

Screenshot of the #2 attempt.

osmc@vero:~$ uname -a
Linux vero 4.9.269-12-osmc #1 SMP PREEMPT Wed Sep 21 12:02:25 UTC 2022 aarch64 GNU/Linux

You are not running the latest kernel.
It should be 4.9.269-13.

Please try updating again.

To go further with this, I’ve now introduced a change that will change the iptables behaviour so that new installations of OSMC after our next update will require absolutely no changes for Docker to run without issue:

For now, you will need to adjust the iptables rule; but that should be it. Whether you chose to patch the Docker script to use a more optimal version (armhf vs armv6l) is up to you, but won’t impact functionality.

Cheers

Sam

1 Like

I can confirm the test kernel works, all my Docker containers back up and running. Thank you, Sam, for the quick resolution!

$ uname -r
4.9.269-13-osmc

$ dpkg -l docker-ce docker-ce-cli
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version                        Architecture Description
+++-==============-==============================-============-========================================================
ii  docker-ce      5:20.10.18~3-0~debian-bullseye armhf        Docker: the open-source application container engine
ii  docker-ce-cli  5:20.10.18~3-0~debian-bullseye armhf        Docker CLI: the open-source application container engine

$ docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
9b157615502d: Pull complete 
Digest: sha256:62af9efd515a25f84961b70f973a798d2eca956b1b2b026d0a4a63a3b0b6a3f2
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (arm32v7)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/
1 Like

You’re most welcome. Thanks for confirming.

The manual iptables change should also be eradicated for new installs after the next update; as covered above.

Cheers

Sam

Hi,

I re-updated, it works now !

Not sure what I did wrong last time, but it doesn’t matter.

Thanks !

Confirmed, working for me too. Thanks Sam!

Thanks Sam - working perfectly!