UNDERSTANDING DOCKER CONTAINERS
Docker support for Raspberry Pi has improved considerably over the past couple of years, with straightforward, easy installation and management that is almost on a par with desktop systems.
If you’re unfamiliar with Docker, it’s worth spending a few moments considering how this software works, and the impact of using it on a Raspberry Pi with external storage attached.
Docker is a virtualisation system that enables you to run one or more applications in an isolated environment. These applications are prepackaged and ready to run, and are known as containers. They feature all the prerequisites and supporting software for the application, so little or no additional installation is required. Containers are also lightweight and can be easily shared or removed. They can even be moved to a new location, with no impact on performance and stability.
What all of this means is that when it comes to downloading your Docker container(s) on a Raspberry Pi, they can be on any mounted drive. This is really useful because the YML file that is part of the Seafile configuration apparently doesn’t support specifying a path to an external drive. It also doesn’t support symlinks. Therefore, the solution is to install the Seafile container on the external drive.
In terms of performance, the hit is negligible. You’re switching from using the SD card to using a USB drive, preferably an SSD or mechanical HDD, rather than USB flash. So, you get faster data transfer and the SD card enjoys a longer lifespan.