Comment # 4 on bug 1232702 from David Walker
Well, this is still happening, but intermittently, so I looked deeper again and
found "Oct 31 12:28:27 rpi4b dockerd[1287]: failed to start containerd: timeout
waiting for containerd to start" in the previously attached log file. The
docker.service has "Restart=60s", so dockerd does restart successfully, but in
the mean time, other services that depend on docker.service (and don't specify
the Restart option) fail on the dependency.

Looking at containerd.service, it has:

  After=network.target local-fs.target
  Conflicts=docker.service

but docker.service has no mention of containerd:

  After=network.target lvm2-monitor.service firewalld.service
  Wants=docker.socket

My interpretation is that after network.target is reached, both docker.service
and container.service are eligible to start, one at a time. If docker.service
happens to start before containerd.service, then containerd.service will not
attempt to start until docker.service exits (well in this case, fails).

Should containerd.service have "Before=docker.service", in addition to
"Conflicts=docker.service"? I'm giving it a try...


You are receiving this mail because: