更新docker(18.09.0)会导致错误

时间:2018-11-09 21:27:52

标签: docker ubuntu-18.04

将docker更新到版本18.09.0后,出现以下错误(带有Ubuntu 18.04的虚拟服务器):

Nov 09 20:53:52 localhost.localdomain modprobe[663]: modprobe: ERROR: ../libkmod/libkmod.c:514 lookup_builtin_file() could not open buitin file '/lib/modules/4.15.0/modules.builtin.bin

Nov 09 20:53:52 localhost.localdomain modprobe[663]: modprobe: FATAL: Module overlay not found in directory /lib/modules/4.15.0

uname -a Linux localhost.localdomain 4.15.0 #1 SMP Wed May 23 10:04:13 MSK 2018 x86_64 x86_64 x86_64 GNU/Linux

还在Majaro的LXC容器(使用Ubuntu 18.04)上

Nov 09 21:06:38 Ubuntu modprobe[5393]: modprobe: ERROR: ../libkmod/libkmod.c:586 kmod_search_moddep() could not open moddep file '/lib/modules/4.14.78-1-MANJARO/modules.dep.bin' Nov 09 21:06:38 Ubuntu modprobe[5393]: modprobe: FATAL: Module overlay not found in directory /lib/modules/4.14.78-1-MANJARO

uname -a Linux Ubuntu 4.14.78-1-MANJARO #1 SMP PREEMPT Sun Oct 21 07:57:51 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

docker -v Docker version 18.09.0, build 4d60db4

我该如何解决?

1 个答案:

答案 0 :(得分:6)

您必须覆盖部分打包的服务文件:

systemctl edit containerd.service

然后插入以下内容并保存:

[Service]
ExecStartPre=

之后,您将能够启动docker。 供参考:https://github.com/docker/for-linux/issues/475#issuecomment-437373774

基本上,您的systemd文件需要清除ExecStartPre值,最好使用替代文件,以便升级可以正确地更新主文件。