Reputation: 11
I have created and installed a kernel 4.19-rt patch on my embedded board using Yocto and use the meta-virtualization layer. In my config file, I have added the following lines
DISTRO_FEATURES_append = " virtualization"
IMAGE_INSTALL_append = " docker cgroup-lite"
DISTRO_FEATURES_append = " systemd"
DISTRO_FEATURES_BACKFILL_CONSIDERED += "sysvinit"
VIRTUAL-RUNTIME_init_manager = "systemd"
VIRTUAL-RUNTIME_initscripts = "systemd-compat-units"
IMAGE_ROOTFS_SIZE_ext4 = "64000000"
KERNEL_FEATURES_append = " features/cgroups/cgroups.scc "
However, after logging in to my board and start dockerd, i get the following error:
ERRO[2021-05-23T08:09:35.292169700Z] Failed to built-in GetDriver graph btrfs /var/lib/docker
ERRO[2021-05-23T08:09:35.301461200Z] 'overlay' not found as a supported filesystem on this host. Please ensure kernel is new enough and has overlay support loaded.
ERRO[2021-05-23T08:09:35.319464500Z] 'overlay' not found as a supported filesystem on this host. Please ensure kernel is new enough and has overlay support loaded.
ERRO[2021-05-23T08:09:35.319629700Z] Failed to built-in GetDriver graph devicemapper /var/lib/docker
INFO[2021-05-23T08:09:35.339165400Z] Graph migration to content-addressability took 0.00 seconds
WARN[2021-05-23T08:09:35.339814100Z] Your kernel does not support cgroup memory limit
WARN[2021-05-23T08:09:35.340049500Z] Your kernel does not support cgroup rt period
WARN[2021-05-23T08:09:35.340145300Z] Your kernel does not support cgroup rt runtime
WARN[2021-05-23T08:09:35.340185800Z] Unable to find blkio cgroup in mounts
WARN[2021-05-23T08:09:35.626041100Z] Unable to find cpuset cgroup in mounts WARN[2021-05-23T08:09:35.626320800Z] mountpoint for pids not found
Error starting daemon: Devices cgroup isn't mounted
How can i fix this problem?
Upvotes: 1
Views: 2188
Reputation: 51
This issue seems to be fixed at least for the latest Kirkstone LTS. I get no such error using your local.conf
.
Upvotes: 0
Reputation: 11
I recently solved this issue on my board, and it looks like you need to enable the right kernel modules for this. Add IMAGE_INSTALL_append = " docker-contrib" to your local.conf and run the /usr/share/docker/check-config.sh on the board, after booting it up. It will list all the kernel modules you need to run docker successfully.
You can use menuconfig (https://www.yoctoproject.org/docs/2.4/kernel-dev/kernel-dev.html#configuring-the-kernel) to configure the kernel and add the missing kernel modules. Docker should run after this.
Hopefully this helps!
Upvotes: 1