Hi all,
Our Nvidia Jetson has very limited storage about 16GB. We would like to store our docker data in an external drive. However, after adding to fstab I get the following error in dmesg and supervisor fails to start:
[ 90.705211] overlayfs: filesystem on '/mnt/external/docker/check-overlayfs-support549496362/upper' not supported as upperdir
I think it’s not happy because the mount point is in a overlayfs. I had turned off readonly for /
this is my fstab along with the entry to mount my external drive:
# stock fstab - you probably want to override this with a machine specific one
/dev/root / auto defaults 1 0
proc /proc proc defaults 0 0
devpts /dev/pts devpts mode=0620,ptmxmode=0666,gid=5 0 0
tmpfs /run tmpfs mode=0755,nodev,nosuid,strictatime 0 0
tmpfs /var/volatile tmpfs defaults 0 0
# uncomment this if your device has a SD/MMC/Transflash slot
/dev/nvme0n1p1 /mnt/external ext4 defaults,sync,noauto 0 0
It appears that mounting only works if I make /
in fstab defaults
instead of ro
(readonly).
The way I achieved the ability for docker to store files elsewhere is by editing /etc/docker/daemon.json
so that it is:
{
"data-root": "/mnt/external/docker"
}
Note that I had also migrated all files in /var/lib/docker
Could you please help me figure out why I get the overlayfs error in dmesg and if that is the root cause preventing docker from starting? I’m also happy to take suggestions about how to go about this particular use case.