Faild to install extension when mount a seprate disk partition to ~/.docker directory

On my Linux Desktop, I mount a seprate disk partition to ~/.docker/ directory with xfs filesystem. And installed desktop (version 4.17.0), start it and run containers normally.

But when I was installing a extntion (for example disk-usage-extension), it failed with below error:

Failed to install extension: installation could not be completed due to: rename /tmp/2159132497-ext-install/docker_disk-usage-extension /home/mengz/.docker/desktop/extensions/docker_disk-usage-extension: invalid cross-device link

My filesystem of /tmp is a btrfs subvolume. As I know, can not hardlink between different filesystems, is it caused by this? And how can I fix this problem?

2 Likes

Same here.
https://bbs.archlinux.org/viewtopic.php?id=242286
it was 2018-11-28 08:11:03 kernel 4.19.x

Hi! We’ve identified a fix for the issue that you are experiencing. We’ll be releasing this fix in our next Docker Desktop release (4.18).

1 Like

Encountered this issue also and it relates to different fstypes between /tmp and /home and/or, different pools with the likes of ZFS. A workaround that could technically get round this is to have /tmp on the same filesystem as /home.

In testing an extension we did this (/tmp to /tmp.bak, then /tmp on same fs as /home), installed the extension and then reverted.

Granted, due to the nature of this I’m not recommending it as an approach but, it’s a workaround for the brave (which will be most here who run Linux as an OS :grinning: )

Thanks for your workaround.

Okay, waiting for the next release.

Thank you. Can you tell, when the 4.18 release is coming?

Yes! Docker Desktop 4.18 was released today.