assume that /dev/sda1 is USB3 storage
curl -sSL https://get.docker.com | sh
usermod -aG docker pi
service docker stop
mkfs.ext4 /dev/sda1
mkdir /mnt/external-storage
echo "/dev/sda1 /mnt/external-storage ext4 defaults,auto,users,rw,nofail,x-systemd.device-timeout=30 0 0" >> /etc/fstab
mount -a
rsync -avP /var/lib/docker /mnt/external-storage/
sudo rm -rf /var/lib/docker
cat > /etc/docker/daemon.json <<EOF
{
"data-root": "/mnt/external-storage/docker"
}
EOF
service docker start
mkdir /mnt/external-storage/portainer-data
docker run -d \
-p 9000:9000 \
-p 8000:8000 \
--name portainer \
--restart always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /mnt/external-storage/portainer-data:/data \
portainer/portainer-ce:alpine
Spent two days searching for an answer. Thank you so much!