To get started, first clone the HiCognition GitHub repository:
git clone --recurse-submodules https://github.com/gerlichlab/HiCognition
or
git clone https://github.com/gerlichlab/HiCognition
git submodule init && git submodule update
the submodule is needed for the documentary template.
HiCognition consists of multiple docker images that work together to power the app. The needed images are specified in the docker-compose.yml
configuration file contained in the Github repository. Once you have cloned the repository, you can build the required images as follows:
cd HiCognition # The location that has the cloned GitHub repository
docker-compose build
This step will pull multiple large base images and start the build process for HiCognition custom images. This step is expected to take roughly 20 minutes.
After the build process is finished, you can start up a HiCognition instance using the following command:
cd HiCognition # The location that has the cloned GitHub repository
docker-compose up -d
The -d
flag specifies that docker-compose should run in the background. The docker-compose configuration starts all components and builds the files for the front-end part of HiCognition. This is expected to take roughly 1 minute. After that, HiCognition is available on port 80 on your local machine!
Thus typing localhost
into the browser should show you the app.
For the user registration to work, the app must be connected to a mail server to send confirmation links. To quickly create an account locally, type into a terminal while hicognition is already running:
docker exec -it flask-server bash
flask user define dummy -p 1234
This will create the user dummy
with the password 1234
.
The HiCognition repository contains an example environment file that specifies all the needed environment variables. You must change these to ensure that you use non-public passwords and secrets! See the configuration section for details.