Skip to content

phenopolis/phenopolis_genomics_browser

Repository files navigation

Phenopolis Genomics Browser 2.0

An Online Platform for Genetic & Phenotype Data

Gitter chat check_app_api

Note this is a new version of the code, the old version is here.

If you use Phenopolis Genomics Browser please cite our paper.

A description of the code setup is available here.

Setup using docker compose

Set the following environment variable in

  • public.env:
VCF_FILE=...

Where VCF_FILE can be either a local file (e.g. path/file.vcf.gz) or a remote S3 file (e.g. s3://any_remote/file.vcf.gz )

It's critical that the VCF_FILE has along its tbi file as well.

  • Create private.env and add:
AWS_SECRET_ACCESS_KEY=....
AWS_ACCESS_KEY_ID=....

Note: do not add single or double quotes around the value as they are preserved.

Build and launch the services

This will set up the database and load the demo database.

docker compose up

If one wants to rebuild fresh images, one can do:

docker compose build --no-cache # rebuild from scratch frontend and api
docker compose build --no-cache frontend # will rebuild just frontend for example

Once running, the API server should be available at http://localhost:5000 and the frontend will be available at http://localhost:8888

With the demo data the following exemplar links should work on the frontend:

Rebuild if you change dependencies

Rebuild, if you change Dockerfile or requirements.txt

docker compose up --build [--no-cache]

Importing other data into the database

Edit db/import_demo_data.sql to import the correct CSV files into the database.

If you do not wish to load any data, simply comment out all the lines within this file.

Connecting to the Postgres Database

It is possible to connect to the postgres shell as follows:

# Note change the values of the user and database name required
docker compose exec db psql --user phenopolis_api --dbname phenopolis_db

Note: When importing an AWS RDS SQL dump, you will need to create the below user before importing the SQL file:

docker compose exec db sh -c 'createuser rdsadmin -U phenopolis_api'