The current example in Wikibase Release Pipeline creates volumes in the default repo /var/lib/docker/volumes/. It would be good to add path-variable into template.env, so that the volumes will be created in an arbitrary user-specified directory.
Description
Related Objects
Event Timeline
This certainly seems sensible. I imagine looking into this as part of a larger set of considerations in focusing, elaborating, and clarifying the Suite Example configuration. Moving to the Suite team backlog for attention.
is this not deprecated as a consequence of T356617: Fix Example a.k.a. Separation of code, config and data?
WBS Deploy stores config files in a local config directory (docker volume directory), and all data in docker native volumes.
The storage location for docker volumes is a setting of the docker daemon, so out of scope for us.
However, you can configure the docker volume storage driver manually on a per volume basis. What you could do in order to store certain data volumes in different locations is to change the volume section in docker-compose.yml
volumes: # A. CORE WIKIBASE SUITE SERVICES DATA wikibase-image-data: driver: local driver_opts: type: none device: "path/to/wikibase-image-data" o: bind mysql-data: driver: local driver_opts: type: none device: "path/to/mysql-data" o: bind # B. EXTRA WIKIBASE SUITE SERVICES DATA wdqs-data: driver: local driver_opts: type: none device: "path/to/wdqs-data" o: bind elasticsearch-data: driver: local driver_opts: type: none device: "path/to/elasticsearch-data" o: bind quickstatements-data: driver: local driver_opts: type: none device: "path/to/quickstatements-data" o: bind # C. REVERSE PROXY AND SSL SERVICES DATA traefik-letsencrypt-data: driver: local driver_opts: type: none device: "path/to/traefik-letsencrypt-data" o: bind
Make sure the directories you reference exist.
Suggested to add that to the deploy docs FAQ. Thanks for bringing this use case to our attention.
I see this is out-of-scope for our documentation as it is core Docker functionality and configuration. We could review whether our documentation is effectively directing the user to Docker documentation more generally, otherwise I think there is not action here.