playbooks/upgrade-docker-ce: add daemon-reload after package swap
Docker's official package installs dockerd at /usr/bin/dockerd; the Debian docker.io package put it at /usr/sbin/dockerd. After the apt swap, the new docker.service unit file is on disk with the right path, but systemd's cached unit still has the OLD ExecStart pointing at /usr/sbin/dockerd. Daemon start fails with: status=203/EXEC "No such file or directory" Fix is systemctl daemon-reload between install and start. nh3-docker hit this; adding the step so esh-docker-vm and ana-docker don't.
This commit is contained in:
@@ -126,6 +126,13 @@ steps:
|
||||
shell: DEBIAN_FRONTEND=noninteractive apt-get install -y {{ pkgs_to_install }}
|
||||
sudo: true
|
||||
|
||||
- name: systemctl daemon-reload (CRITICAL — package swap put dockerd at
|
||||
/usr/bin/dockerd; without reload, systemd keeps the old unit's
|
||||
ExecStart pointing at /usr/sbin/dockerd from docker.io and fails
|
||||
with status=203/EXEC "No such file or directory")
|
||||
shell: systemctl daemon-reload
|
||||
sudo: true
|
||||
|
||||
- name: Enable + start the new daemon (idempotent)
|
||||
shell: systemctl enable --now docker
|
||||
sudo: true
|
||||
|
||||
Reference in New Issue
Block a user