Where the data is
A datastore keeps its data on a Docker volume. The volume stays when the container goes away.
The container writes its data to the volume.
Each datastore has one named Docker volume. The volume keeps the data through a restart of the server, the replacement of a crashed container, and a new container.
The volume
| Postgres | Redis | |
|---|---|---|
| Name of the volume | <prefix>-ds-<name>-data | The same |
| Path in the container | /var/lib/postgresql/data | /data |
With the default prefix, the volume of app-db is ferry-ds-app-db-data.
Redis runs with --appendonly yes. Thus Redis also writes its data to the volume.
Ferry never gives a new datastore a volume that Ferry did not create for it. Such a volume can come from an earlier datastore, from another server, or from a manual docker volume create.
Then the creation fails. The message tells you what to do: remove the volume (docker volume rm …), or choose a different name.
A volume has no quota. It can grow until the disk of the server is full.