Skip to content

Latest commit

 

History

History
108 lines (60 loc) · 3.54 KB

README.md

File metadata and controls

108 lines (60 loc) · 3.54 KB

How to build and run docker

Build image

  1. Create an image

sudo docker image build -t histdbimage:1.0.0 .

  1. List all images

sudo docker images

  1. Remove image

sudo docker rmi <imageID>

  1. Remove all images

sudo docker rmi $(sudo docker images -a -q)

Run docker

NOTE: for initial histone db initialization the ncbi taxonomy database creating requires at least 4 Gb of RAM available to docker container. You will see the problem if the progress bar suddenly freezes or becomes very slow.

  1. Run docker image

sudo docker container run -it --name histonedb_docker -v /home/l_singh/docker_app_test/histonedb:/var/www/histonedb --mount type=bind,src=/home/l_singh/docker_app_test/database,dst=/var/lib/mysql histdbimage:1.0.0

sudo docker container run -it --name histonedb_docker -v /home/l_singh/docker_app_test/histonedb:/var/www/histonedb --mount type=bind,src=/home/l_singh/docker_app_test/database,dst=/var/lib/mysql histdbimage:1.0.0 -without_setup

sudo docker container run -it -p 8080:10080 -v /home/l_singh/docker_app_test/histonedb:/var/www/histonedb --mount type=bind,src=/home/l_singh/docker_app_test/database,dst=/var/lib/mysql histdbimage:1.0.0 -without_setup

  1. List docker containers

sudo docker ps -a

  1. Start docker container

sudo docker start <containerID>

or

sudo docker start -ia <containerID>

  1. Connect to running container in interactive mode

sudo docker exec -it <containerID> bash

  1. Remove container

sudo docker rm <containerID>

  1. Remove all containers

sudo docker rm $(sudo docker ps -a -q)

  1. Remove last container

sudo docker rm $(sudo docker ps -l -q)

  1. Create docker container

sudo docker create -it --name histonedb_docker -v /home/l_singh/docker_app_test/histonedb:/var/www/histonedb --mount type=bind,src=/home/l_singh/docker_app_test/database,dst=/var/lib/mysql histdbimage:1.0.0 -without_setup

sudo docker create -it -p 8080:10080 -v /home/l_singh/docker_app_test/histonedb:/var/www/histonedb --mount type=bind,src=/home/l_singh/docker_app_test/database,dst=/var/lib/mysql histdbimage:1.0.0 -without_setup

docker logs -f --until=2s

This is how we need to do it now

docker image build -t intbio/histonedb:0.0.1 . docker push intbio/histonedb:0.0.1

Running via docker

  • Run as a service in docker, this will run apache and attempt to start mysqld docker run --name histdb -d -p 8080:10080 -v /Users/alexsha/work_HD/histonedb:/var/www/histonedb -v /Users/alexsha/junk/db:/var/lib/mysql intbio/histonedb:0.0.1
  • Get into container and start db regeneration docker exec -it histdb bash
  • Next in reinit_histdb_local.sh adjust the database you would want to build HistoneDB from (swissprot, nr, etc.)

bash db_gen.sh -mysql_db_reinit -histdb_reinit

docker stop histdb

Run in singularity

singularity build --sandbox cont docker://intbio/histonedb:0.0.1

  • This will run apache on prot 10080 and attempt to start mysqld singularity instance start --writable --bind /mnt/ramdisk/hdb/histonedb:/var/www/histonedb,/mnt/ramdisk/hdb/db:/var/lib/mysql cont histdb

  • Regenerate db

singularity shell instance://histdb

apachectl start cd /var/www

  • Next in reinit_histdb_local.sh adjust the database you would want to build HistoneDB from (swissprot, nr, etc.)

bash db_gen.sh -mysql_db_reinit -histdb_reinit

singularity instance stop histdb

For development

  • Profiling python -m cProfile -s cumtime manage.py buildvariants