How to set up CSHL collection deployment in docker¶
Make sure you have read access to the directory with the collection data:
ls -l /mnt/cephfs/seqpipe/duckdb_storage/
If you can’t read the directory, ask the administrator to give you access.
Clone the CSHL collection deployment repository:
git clone git@github.com:iossifovlab/cshl-collection-deployment.git
Enter into the repository directory and source the environment setup script:
cd cshl-collection-deployment source ./seqpipe_setenv.sh
Run docker-compose pull to update all docker images, especially GPF full container docker image.
docker compose pull
Please note that we are using the latest released image of the GPF full container:
iossifovlab/iossifovlab-gpf-full:latest. If you want to use a different GPF full container image, you can change the image name in thedocker-compose.ymlfile.Run docker compose to start the GPF full container
docker compose up
This will start multiple containers:
MySQL database server
Iossifovlab’s GPF full container
Finalize the setup of the GPF full container
Exec into the GPF full container
docker exec -it cshl-collection-deployment-gpf-1 /bin/bash
Create an admin user: Inside the container run
wdaemanage.py user_create admin@iossifovlab.com \ -p secret -g any_dataset:admin
Create an OAuth2 application for the frontend
wdaemanage.py createapplication --user 1 \ --redirect-uris "http://localhost:8000/gpf/login" \ --name "GPF Genotypes and Phenotypes in Families" \ --client-id gpfjs public authorization-code --skip-authorization
Note
Please note that once you create an admin user and OAuth2 application, they will persist and be stored in the database until you destroy the database container. To do this, you need to explicitly run
docker compose down.Open your browser and navigate to http://localhost:8000/gpf/