This repository contains code for running various connectome-related services related currently deployed
on flyem.mrc-lmb.cam.ac.uk (internally flyem1):
- a supervoxel look-up service for the Zheng et al. CA3 volume
- a service for dynamically generating neuroglancer segmentation properties from tables on flytable
The project uses uv to manage dependencies and the virtual environment.
# Run to setup dependencies
uv syncIf you are running this server in production, you probably want a virtual environment:
# Create a virtual environment
uv envIn order to use the segment property service, you will also need to setup environment variables:
SEATABLE_SERVER: URL for FlyTableSEATABLE_TOKEN: API token for FlyTable
Note to self: on flyem1 I added these to the gunicorn_start script.
uv run uvicorn --reload app.main:app
uv run pytest
We deployed this service on flyem1 using:
gunicornas the webserversupervisoras the process control system for the gunicorn server- a reverse proxy set up in
nginxforwarding requests to the gunicorn webserver
Please see this tutorial for general step-by-step instructions.
This Slack message contains details on how
the service is currently deployed on flyem1.
To restart the service (e.g. after changing the code), you can run:
sudo supervisorctl restart transform_service