Local System Setup
UnifyBio supports use in a multitude of configurations, from individual laptops to on-premise systems in labs and organizations and large, distributed cloud systems. For both dev convenience, and to enable individual scientists and small teams, UnifyBio provides two local system configuration options.
Local System Management with Docker Compose
By convention, software distrubtions that contain UnifyBio tools ship with a local docker compose system that consists of:
- a Postgres database, which acts as Datomic's underlying storage.
- a Datomic transactor
- a Query Service, with a JSON Query API that backs the R and Python libraries
Local systems write high dimensional measurement data to file storage instead of cloud object storage, so measurement matrices and HDF, parquet, and zarr files will be stored in a subdirectory and accessed from there (this configuration can be overwritten).
To use the local docker compose system, you will need to install Docker Desktop or the Docker Engine, depending on your platform.
After obtaining a UnifyBio software distribution, you can run:
To start a local system. Note: while this script is typically provided as a convenience,
all that is stricly necessary is to navigate the directory which contains the
docker-compose.yml file and run docker-compose up.
Local System Management through JVM process management
While containerization provides user convienence, it also results in operational complexity that is not stricly necessary for use. UnifyBio is tested and supports use with JVM 21+ conforming distributions of temurin, corretto, and Oracle Java. You can run any of the individual components of the local Unify system as components on the same machine, or distributed across several machines in any suitable network configuration.
While UnifyBio's core tools are written in Clojure, they are distributed as uberjars and you will not need a Clojure distribution unless you intend to do development, in which case you should refer to Clojure's official installation and getting started guides.