Ubuntu vmの22から24へのアップグレード、discourse dockerで詰まる

UbuntuでDiscourseを実行しています。しばらくシステムにログインしていませんでしたが、do-release-upgradeでアップグレードが必要になりました。

これは正常に実行されたように見えますが、再起動後にDiscourseが機能せず、systemctl restart dockerを実行したところ、journalctlで以下のログが表示されました。

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)を実行した際に、上記のすべてに気づきました。

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


これは本当にカーネルの問題でしょうか?どう進めばよいかわかりません。もちろん、do-release-upgradeを実行した際にDiscourseのDBのバックアップを取っていませんでした。最近投稿した重要なメモがあり、それらを取り戻したいです :face_with_peeking_eye:

アプリの再構築はもう完了しましたか?

@omarfilip
申し訳ありません、最初に追加し忘れていました。これが、Dockerが最初から実行されていなかった理由を調査するきっかけとなりました。

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

何かアイデアの参考になるかもしれません。

do-release-upgrade を実行する必要があったのではなく、推奨されただけです。

提案されたように、Docker が壊れています。修正する必要があります。うまくいくかもしれないし、うまくいかないかもしれない方法の 1 つは次のとおりです。

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

警告が表示されますが、最近これを使用しました。

次に、これが成功するかどうかを確認できます。

docker run hello-world