Ubuntu vm upgrade from 22 to 24 holding discourse docker

I have an instance of discourse running on ubuntu. I have not logged into the system in a while and it required an upgrade with do-release-upgrade.

This seems to run fine, but after reboot discourse did not work and doing a systemct restart docker journalctl revealed

Nov 07 16:53:58 discourse systemd[1]: docker.service: Scheduled restart job, restart counter is at 2.
Nov 07 16:53:58 discourse systemd[1]: Starting docker.service - Docker Application Container Engine...
Nov 07 16:53:58 discourse dockerd[1566]: time="2024-11-07T16:53:58.855938951-05:00" level=info msg="systemd-resolved is running, so using resolvconf: /run/systemd/resolve/resolv.conf"
Nov 07 16:53:58 discourse dockerd[1566]: time="2024-11-07T16:53:58.858965305-05:00" level=info msg="parsed scheme: \"unix\"" module=grpc
Nov 07 16:53:58 discourse dockerd[1566]: time="2024-11-07T16:53:58.859013907-05:00" level=info msg="scheme \"unix\" not registered, fallback to default scheme" module=grpc
Nov 07 16:53:58 discourse dockerd[1566]: time="2024-11-07T16:53:58.859094653-05:00" level=info msg="parsed scheme: \"unix\"" module=grpc
Nov 07 16:53:58 discourse dockerd[1566]: time="2024-11-07T16:53:58.859114038-05:00" level=info msg="scheme \"unix\" not registered, fallback to default scheme" module=grpc
Nov 07 16:53:58 discourse dockerd[1566]: time="2024-11-07T16:53:58.864502036-05:00" level=info msg="[graphdriver] using prior storage driver: overlay2"
Nov 07 16:53:58 discourse dockerd[1566]: time="2024-11-07T16:53:58.871019185-05:00" level=info msg="Graph migration to content-addressability took 0.00 seconds"
Nov 07 16:53:58 discourse dockerd[1566]: time="2024-11-07T16:53:58.871656775-05:00" level=warning msg="Your kernel does not support cgroup memory limit"
Nov 07 16:53:58 discourse dockerd[1566]: time="2024-11-07T16:53:58.871680667-05:00" level=warning msg="Unable to find cpu cgroup in mounts"
Nov 07 16:53:58 discourse dockerd[1566]: time="2024-11-07T16:53:58.871693302-05:00" level=warning msg="Unable to find blkio cgroup in mounts"
Nov 07 16:53:58 discourse dockerd[1566]: time="2024-11-07T16:53:58.871704545-05:00" level=warning msg="Unable to find cpuset cgroup in mounts"
Nov 07 16:53:58 discourse dockerd[1566]: time="2024-11-07T16:53:58.871760062-05:00" level=warning msg="mountpoint for pids not found"
Nov 07 16:53:58 discourse dockerd[1566]: Error starting daemon: Devices cgroup isn't mounted
root@discourse:/var/discourse# uname -r
6.8.0-48-generic
root@discourse:/var/discourse# cat /etc/os-release 
PRETTY_NAME="Ubuntu 24.04.1 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04.1 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=noble
LOGO=ubuntu-logo

rebuild is what got me to realise all the above

root@discourse:~# cd /var/discourse
root@discourse:/var/discourse# ./launcher rebuild app
Device "docker0" does not exist.
Cannot connect to the docker daemon - verify it is running and you have access


IS this really a problem with the kernel? I am not sure how to proceed, and of course when I type do-release-upgrade I did not do a backup of the discouse DB which I posted some recent important notes I would like to get back :face_with_peeking_eye:

Have you already rebuilt the app?

@omarfilip
sorry, initially forgot to add that. This was what got me looking into why docker wasn’t running from the start

root@discourse:~# cd /var/discourse
root@discourse:/var/discourse# ./launcher rebuild app
Device "docker0" does not exist.
Cannot connect to the docker daemon - verify it is running and you have access

See if this gives you any ideas:

It didn’t require that you do a do-release-upgrade, it recommended it.

As suggested, docker is broken. You should fix it. One way, that might work, but might not, is

curl https://get.docker.com | sh

You’ll get some warnings, but I’ve used it recently.

Then you can see if this succeeds:

docker run hello-world