NDB is a collection of services for managing annotated neuron data.
After installation the various services are available on dedicated ports of the host machine. For example, the SWC file services are available in the 965x range. A landing page with links to each service is exposed on port 80.
The current implementation uses Docker with Docker Compose to manage the multiple independent services.
A standard installation of Docker is sufficient.
The databases use Data Volumes. Starting, stopping, and removing/updating the service containers will not remove database contents.
Most Docker Compose operations are wrapped in batch scripts to ensure the required flags are correct, e.g. test vs. production.
- Backing up data
If this is not the first launch of the services, and the services are currently running, you can back up all database contents from the Data Volumes:
./backup.sh
Output goes to /opt/data/backup unless unless that mapping has been changed in the compose file.
- Starting or restarting the services
./up.sh
The host environment variable TRANSFORM_VOL
can be used to override the location on the host machine that will be
mapped to /groups/mousebrainmicro/mousebrainmicro
in the registration transform service container. By default,
this is /mnt/groups
.
The path to the Ontology Atlas for brain area lookup defaults to /groups/mousebrainmicro/mousebrainmicro/registration/Allen Atlas/OntologyAtlas.h5
path ()from container perspective). This can be overridden with the ONTOLOGY_PATH
environment variable passed to
the transform-api service in the docker compose file. It is not from a host env var.
- Stopping services
./stop.sh
- Tearing down services (retains data)
./down.sh
destroys existing service containers but does not remove any data volumes. Newer container images can then be pulled and the services restarted with the up script.
- Migration
./migrate.sh
- Logs
./logs
will bring up the correct set of Compose logs for this container set (vs. test or any other deployment on the same host).