I noticed a quiet new behavior that I noticed only on Edge controller and TP600.
When I install Docker, and move it to SD card and try to deploy a container for the first time I get the following error :
docker: Error response from daemon: failed to create shim: OCI runtime create failed: /media/sd/docker/overlay2/97c47323d9dbcdf7618a4757b9eae7f223d95d5f3d7eb2fd0f76ef14676f381f/merged is not an absolute path or is a symlink: unknown.
It seems to have a link with the symbolic link …
The restart of the docker daemon seems to solve the issue but I’d like to find the reason behind and a better way to solve it.
Thanks for your feedback.
Did you move it by specifying the new data-root in the /etc/docker/daemon.json ?
Yes, exactly ! And then I restart the daemon. The sd card is previously formated in ext4.
Thats strange. I have seen that error if symlinks is used instead of updating the daemon.json.
This is the way I move the location of docker.
- Stop the daemon
- Add/create the daemon.json and add the new data-root location
- rsync the old location to the new one
- rename the old location (and deletes this when everything is confirmed OK)
- Start the daemon
I haven’t tested this on a edge controller/TP600 though… so it could be that these acts differently.
I did a quick test. Did you allready have a docker mount, and SD card was allready formatted and mounted once… then formatted once again and/or changed the label. I think you have to update the mounts and not only restart the docker deamon. Maybe safer to reboot the controller. The “failed to create shim” error I also saw in these cases.