> Why was a solution for running docker containers not mentioned in the
Ubuntu 21.10 release notes?

My apologies -- that's my oversight, which I have now corrected,
including a note about Docker. That said, had I remembered to include it
last week I can't say I would've mentioned Docker. It's a package in
universe and thus community supported. As far as I'm aware it's not
something we directly test with the Pi images.

> Why have you, Dave, not immediately told me of the solution (install
modules-extra!) as soon as you saw this bug report?

Because by the time I noticed this bug report (a few hours ago), I'd
also read the comments and noted you'd already been provided with the
solution (i.e. install linux-modules-extra-raspi). All I could
reasonably add to that was a means to do so implicitly on the first boot
(my cloud-init user-data suggestion).

> Why has the docker.io package not added a dependency on the modules-
extra package? It clearly does not work without this package on raspi.

While it's possible to add per-architecture dependencies to debs (e.g.
Depends: linux-modules-extra-raspi[armhf arm64]), that's not specific
enough for this case. It'd be incorrect for Docker operating on an AWS
arm64 instance, for example.

It *could* be added as Suggests: linux-modules-extra-raspi[armhf arm64]
(I *think* per-architecture specs are valid in Suggests as well as the
various Depends variations). Again, this wouldn't be strictly correct
(it's evidently a hard dependency on the raspi platform), but it would
at least hint to users when installing docker.io that something extra
might be needed. It couldn't be added as Recommends: because, again,
that would result in its implicit installation on other non-pi
armhf/arm64 platforms.

> Why was the veth kernel module moved to modules-extra? You are talking
about 19MB space savings of compressed initrd, but this module is only
25k, uncompressed! And on ubuntu servers, Docker certainly is one of the
main use cases.

We only have sufficient resources for one -raspi kernel package, hence
that package (and its corresponding modules package(s)) needs to cover
both server and desktop use-cases. In this case, the "veth" module,
while obviously vital for Docker, is clearly an optional component if
seen from the perspective of covering both server and desktop cases; to
most desktop users it's redundant.

> I feel that there needs to be a fix other than invalidating my >10
hours of my work by invalidating this bug report.

I'm sorry it's taken you >10 hours to discover the underlying cause, and
a solution to it, and that's at least partly my fault for forgetting to
include the existence of linux-modules-extra-raspi in the Impish release
notes. However, I'm afraid in the case of the linux-raspi package, this
certainly is invalid: it's operating as intended.

I could re-point this bug to the docker.io package, if you'd prefer, but
(for reasons given above) I'm not sure there's a valid solution there
either?

> Coming back to boot time savings: IMO that's a thing for desktops. But
for servers? I mean, servers are meant to run uninterrupted until there
is a kernel update. A few seconds more per reboot therefore does not eat
away from the uptime. Your server images, therefore, should have
modules-extra installed by default.

In *your* use-case, servers are evidently meant to be long running, but
that's not universal. There are plenty of server use-cases (ephemeral
ones where the Pis themselves act as containers, IoT/robotics cases,
etc.) where boot-speed *does* matter. Also, as noted above, we've a
single kernel package that has to do double service for both the server
and desktop images.

> We use ubuntu instead of raspi-os on our ARM build servers only
**because** we need to run Docker for ARM 32 and 64 bits. Please find
another solution for this cannot-run-docker-out-of-the-box problem for
your server image than letting all your users in the dark about why they
cannot run docker anymore in 21.10.

You presumably need to do "sudo apt install docker.io" first? I'm not
convinced changing that to "sudo apt install docker.io linux-modules-
extra-raspi" is such a burden? There's not even a requirement to reboot;
the module can (and should) be loaded dynamically once installed.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1947601

Title:
  Cannot start docker container on ubuntu 21.10 server for raspberry pi

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-raspi/+bug/1947601/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to