Basically, we do not want the user to have right access to our server, that is why repo2data wold be launch on the server every time any user upload a new repository.
The process could be seen as it:
- A user upload his work (a notebook), which is using some databases (from https://openneuro.org/ for example).
- He provides in the repo a configuration file
data_requirements.json
, which specify where the data lives - After the docker image is built, we launch repo2data from our server which will read user’s
data_requirements.json
- The database is downloaded on a folder
/data
on our server (if it is not already existing on our server) -
/data
is accessible as read-only by every users (every notebooks running on our binder).