############################################################################## ### push to dockerhub export DOCKER_ID_USER="dblyon" docker login docker tag agotool dblyon/agotool docker push dblyon/agotool ############################################################################## ### installation on red hat virtual server # copy static data to server (can be deleted after copying it to named volume) rsync -avr /Users/dblyon/modules/cpr/agotool/data david@10.34.6.24:/data_from_ody/ # pull github repo git clone ... or cd /var/www/agotool git pull origin docker # change preload to False in /var/www/agotool/app/python/variables.py, PRELOAD = False vim /var/www/agotool/app/python/variables.py # build the images docker-compose build # copy data to named volume (spin up another container that deletes itself after it is done) docker run --rm -it --volume /data_from_ody:/mounted_data --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp rsync -avr /mounted_data/data /agotool_data/ # delete data if needed rm -rf /data_from_ody # download newest resources docker run --rm -it --name update --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp python ./app/python/update_manager.py # test DB docker exec -it agotool_db_1 psql -U postgres -d agotool_test -f /agotool_data/data/PostgreSQL/copy_from_file_and_index_TEST.psql docker exec -it agotool_db_1 psql -U postgres -d agotool_test -f /agotool_data/data/PostgreSQL/drop_and_rename.psql # populate DB for real docker exec -it agotool_db_1 psql -U postgres -d agotool -f /agotool_data/data/PostgreSQL/copy_from_file_and_index.psql docker exec -it agotool_db_1 psql -U postgres -d agotool -f /agotool_data/data/PostgreSQL/drop_and_rename.psql # change "preload" to True, change "skip_slow_downloads" to False, change "debug" to False vim /var/www/agotool/app/python/variables.py --> tadaaa it should work now ### scale a service like the flask-app docker-compose up -d --scale flaskapp=2 ############################################################################## ##### Tree structure of local version of repo . ├── app │ ├── conf.d │ ├── python │ └── static │ ├── css │ ├── js │ └── templates └── data ├── Background_Reference_Proteomes ├── PostgreSQL │ ├── downloads │ ├── static │ └── tables │ └── test ├── exampledata ├── logs └── session ##### on virtual server # named volume /agotool_data/ └── data ├── Background_Reference_Proteomes ├── PostgreSQL │ ├── downloads │ ├── static │ └── tables │ └── test ├── exampledata ├── logs └── session # and in /opt/services/flaskapp/src . ├── conf.d ├── python └── static ├── css ├── js └── templates ############################################################################## ############################################################################## ### Docker from DBL for agotool local (Ody) 0. write proper requirements.txt (NOT pip freeze > requirement.txt) pipreqs --force . 1. build images from docker-compse.yml docker-compose build 2. run images in background docker-compose up -d 3. get the container id for the PostgreSQL DB docker ps 4. run psql scripts to populate DB (from host run the psql script in the container) # First time setup docker exec -it agotool_db_1 psql -U postgres -d postgres -f /agotool_data/data/PostgreSQL/create_DBs.psql docker exec -it agotool_db_1 --volume "agotool_agotool_data:/agotool_data" psql -U postgres -d postgres -f ./app/sql/create_DBs.psql # TESTING docker exec -it agotool_db_1 psql -U postgres -d agotool_test -f ./app/postgres/copy_from_file_and_index_TEST.psql docker exec -it agotool_db_1 psql -U postgres -d agotool_test -f ./app/postgres/drop_and_rename.psql # real DB/not testing docker exec -it agotool_db_1 psql -U postgres -d agotool -f ./app/postgres/copy_from_file_and_index.psql docker exec -it agotool_db_1 psql -U postgres -d agotool -f ./app/postgres/drop_and_rename.psql # test DB docker exec -it agotool_db_1 psql -U postgres -d agotool_test -f /Users/dblyon/modules/cpr/agotool/data/PostgreSQL/copy_from_file_and_index_TEST_ODY.psql docker exec -it agotool_db_1 psql -U postgres -d agotool_test -f /Users/dblyon/modules/cpr/agotool/data/PostgreSQL/drop_and_rename.psql # populate DB for real docker exec -it agotool_db_1 psql -U postgres -d agotool -f /Users/dblyon/modules/cpr/agotool/data/PostgreSQL/copy_from_file_and_index_ODY.psql docker exec -it agotool_db_1 psql -U postgres -d agotool -f /Users/dblyon/modules/cpr/agotool/data/PostgreSQL/drop_and_rename.psql 5. monthly UPDATES # spin up another instance of agotool_flaskapp image as temporary container that is removed after the commands finish docker run --rm -it --name update --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp python ./app/python/update_manager.py # check out the named volume docker run --rm -it --name checkvolume --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp bash # check out the Postgres DB docker run --rm -it --name checkdb --volume "dbdata:/var/lib/postgresql/data" postgres bash ############################################################################## ##### copy data to named volume # spin up another container that deletes itself after it is done docker run --rm -it --volume /data_from_ody:/mounted_data --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp rsync -avr /mounted_data/data /agotool_data/ docker run --rm -it --volume /agotool_data:/mounted_data --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp bash # as soon as I exit the container will delete itself. Self destruction # volume data persists # alternative to 2 named volumes: # 1 volume with 2 sources and 2 different mount points ############################################################################## ##### crontab on red hat virtual server SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed # added David Lyon 0 4 1 * * root /var/www/agotool/app/update_DB.sh >> /agotool_data/data/logs/updates_log.txt 2>&1 & #30 * * * * dblyon /home/dblyon/bin/restart_if_down.sh ############################################################################## ### restart if down, deprecated and needs debugging #!/bin/bash if ps aux | grep "python3 runserver.py" > /dev/null then echo "Running" else echo "Stopped" mail -s "aGOtool is restarting" dblyon@gmail.com < /var/www/agotool/logs/update.log cd /var/www/agotool sudo -u agotool python3 runserver.py >> /var/www/agotool/logs/runserver.log 2>&1 & fi ############################################################################## #### backup and restore docker named volume # backup docker run --rm \ --volume [DOCKER_COMPOSE_PREFIX]_[VOLUME_NAME]:/[TEMPORARY_DIRECTORY_TO_STORE_VOLUME_DATA] \ --volume $(pwd):/[TEMPORARY_DIRECTORY_TO_STORE_BACKUP_FILE] \ ubuntu \ tar cvf /[TEMPORARY_DIRECTORY_TO_STORE_BACKUP_FILE]/[BACKUP_FILENAME].tar /[TEMPORARY_DIRECTORY_TO_STORE_VOLUME_DATA] # e.g. docker run --rm --volume agotool_agotool_data:/named_volume_dir --volume $(pwd):/bind_mount_dir ubuntu tar cvf /bind_mount_dir/named_volume_agotool_data_backup_20180209.tar /named_volume_dir docker run --rm --volume agotool_dbdata:/named_volume_dir --volume $(pwd):/bind_mount_dir ubuntu tar cvf /bind_mount_dir/named_volume_dbdata_backup_20180209.tar /named_volume_dir # restore docker run --rm \ --volume [DOCKER_COMPOSE_PREFIX]_[VOLUME_NAME]:/[TEMPORARY_DIRECTORY_STORING_EXTRACTED_BACKUP] \ --volume $(pwd):/[TEMPORARY_DIRECTORY_TO_STORE_BACKUP_FILE] \ ubuntu \ tar xvf /[TEMPORARY_DIRECTORY_TO_STORE_BACKUP_FILE]/[BACKUP_FILENAME].tar -C /[TEMPORARY_DIRECTORY_STORING_EXTRACTED_BACKUP] --strip 1 # e.g. docker run --rm --volume agotool_agotool_data:/named_volume_dir --volume $(pwd):/bind_mount_dir ubuntu tar xvf /bind_mount_dir/named_volume_agotool_data_backup_20180209.tar -C /named_volume_dir --strip 1 docker run --rm --volume agotool_dbdata:/named_volume_dir --volume $(pwd):/bind_mount_dir ubuntu tar xvf /bind_mount_dir/named_volume_dbdata_backup_20180209.tar -C /named_volume_dir --strip 1 ##### beta version on aquarius ### backup docker run --rm --volume agotool_agotool_data:/named_volume_dir --volume $(pwd):/bind_mount_dir ubuntu tar cvf /bind_mount_dir/named_volume_agotool_data_backup_20180903.tar /named_volume_dir docker run --rm --volume agotool_dbdata:/named_volume_dir --volume $(pwd):/bind_mount_dir ubuntu tar cvf /bind_mount_dir/named_volume_dbdata_backup_20180903.tar /named_volume_dir ### copy files rsync -avv -e 'ssh -p 22222' /Users/dblyon/modules/cpr/agotool/named_volume_agotool_data_backup_20180903.tar dblyon@aquarius.meringlab.org://home/dblyon/agotool/data/named_volume_dbdata_backup_20180903.tar rsync -avv -e 'ssh -p 22222' ./named_volume_dbdata_backup_20180903.tar dblyon@aquarius.meringlab.org://home/dblyon/agotool/data/named_volume_dbdata_backup_20180903.tar ### restore on aquarius docker run --rm --volume agotool_agotool_data:/named_volume_dir --volume $(pwd):/bind_mount_dir ubuntu tar xvf /bind_mount_dir/named_volume_agotool_data_backup_20180903.tar -C /named_volume_dir --strip 1 docker run --rm --volume agotool_dbdata:/named_volume_dir --volume $(pwd):/bind_mount_dir ubuntu tar xvf /bind_mount_dir/named_volume_dbdata_backup_20180903.tar -C /named_volume_dir --strip 1 ############################################################################## ### tag and push flaskapp to dockerhub/docker cloud docker tag 3d5c5b99296e dblyon/agotool_flaskapp docker push dblyon/agotool_flaskapp ############################################################################## # ToDo # - push to dockerhub --> done # - set branch docker to master --> done # - create webhooks a la Lars (see below) git commit and push --> github/bitbucket notifies Dockerhug --> Dockerhub builds image --> missing piece: server pulls image and starts it up # Lars automatic updates/webhooks bitbucket/github webhooks on C++ repo Dockerhub build settings trigger URL paste webhook m dockerhub to bitbucket ############################################################################## ### asking Tim to change email address docker run --rm -it --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp bash ############################################################################## ###### @ UZH IMLS # change preload to False in ../app/python/variables.py, PRELOAD = False otherwise flask needs access to Postgres which isn't populated yet # build the images docker-compose build # pushed to image to dockerhub export DOCKER_ID_USER="dblyon" docker login docker push dblyon/python_agotool # commented out the "build" line in order to pull from dockerhub next time instead of building from Dockerfile flaskapp: # build: . # uncomment to build from Dockerfile, else pull from dockerhub image: dblyon/python_agotool:latest # start the containers docker-compose up -d # tmux and download newest resources and create DB files for import docker run --rm -it --name update --user 5009:5009 --volume /mnt/mnemo5/dblyon/agotool:/agotool_data dblyon/python_agotool python ./app/python/update_manager.py # test DB docker exec -it agotool_db_1 psql -U postgres -d agotool_test -f /agotool_data/data/PostgreSQL/copy_from_file_and_index_TEST.psql docker exec -it agotool_db_1 psql -U postgres -d agotool_test -f /agotool_data/data/PostgreSQL/drop_and_rename.psql # populate DB for real docker exec -it agotool_db_1 psql -U postgres -d agotool -f /agotool_data/data/PostgreSQL/copy_from_file_and_index.psql docker exec -it agotool_db_1 psql -U postgres -d agotool -f /agotool_data/data/PostgreSQL/drop_and_rename.psql # change "preload" to True, change "skip_slow_downloads" to False, change "debug" to False ############################################################################## # really executed above # scratch below # copy data to named volume (spin up another container that deletes itself after it is done) docker run --rm -it --volume /mnt/mnemo5/dblyon/agotool/data:/mounted_data --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp rsync -avr /mounted_data /agotool_data/ # download newest resources docker run --rm -it --name update --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp python ./app/python/update_manager.py # run containers and create "dbdata" volume docker-compose up -d # change preload to False in ../app/python/variables.py, PRELOAD = False vim /var/www/agotool/app/python/variables.py docker run --rm -it --name work --volume /mnt/mnemo5/dblyon/agotool/data:/mounted_data --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp bash ### up next # test DB docker exec -it agotool_db_1 psql -U postgres -d agotool_test -f /agotool_data/data/PostgreSQL/copy_from_file_and_index_TEST.psql docker exec -it agotool_db_1 psql -U postgres -d agotool_test -f /agotool_data/data/PostgreSQL/drop_and_rename.psql docker run --rm -it --name test --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp bash #### DEBUG # change docker default location to store files # check disk usage of default storage loaction sudo du -sh /var/lib/docker 788K /var/lib/docker #### How to store data # Postgres data in named volume "dbdata" - "dbdata:/var/lib/postgresql/data" # Otherwise might be a better solution to not have another named volume like at CPR/SUND # but a bind mount - /mnt/mnemo5/dblyon/agotool/data:/agotool_data docker run --rm -it --name test --volume /mnt/mnemo5/dblyon/agotool:/agotool_data centos bash docker exec -it bash ### RSYNC between Ody and Atlas rsync -av --exclude .git /Users/dblyon/modules/cpr/agotool/ dblyon@imlslnx-atlas.uzh.ch:/mnt/mnemo5/dblyon/agotool rsync -av --exclude .git dblyon@imlslnx-atlas.uzh.ch:/mnt/mnemo5/dblyon/agotool/ /Users/dblyon/modules/cpr/agotool ########################################################################################## ### Tim at SUND to change email address # log into virtual server # change files locally at # There are 2 files which would have to be edited: vim /var/www/agotool/app/static/templates/FAQ.html (1x at the bottom) vim /var/www/agotool/app/static/templates/about.html (2x at the top and in the middle) # stop the docker containers docker-compose down # build the images again, which should incorporate the local changes docker-compose build # start the docker containers again docker-compose up -d --scale flaskapp=2 # check that things are running correctly, this should list 4 containers (2x flaskapp, 1x postgres, 1x nginx) docker ps ########################################################################################## docker run --rm -it --name test --user 5009:5009 --volume /mnt/mnemo5/dblyon/agotool:/agotool_data dblyon/python_agotool bash docker exec -it agotool_flaskapp_1 bash ########################################################################################## ### @ Ody, local version ### file structure locally, dblyon@Ody ...modules/cpr/agotool restapi $ tree -d . ├── app │ ├── conf.d │ ├── python │ │ └── __pycache__ │ └── static │ ├── css │ ├── js │ └── templates └── data ├── Background_Reference_Proteomes ├── PostgreSQL │ ├── downloads │ ├── static │ └── tables │ └── test ├── exampledata ├── logs └── session # set "PRELOAD = False" vim /app/python/variables.py # build the images docker-compose build # run containers docker-compose up -d # copy data to named volume (spin up another container that deletes itself after it is done) docker run --rm -it --volume /Users/dblyon/modules/cpr/agotool:/mounted_data --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp rsync -avr /mounted_data/data /agotool_data/ # delete data if needed, skipped (for later to save disk space) rm -rf /Users/dblyon/modules/cpr/agotool/data # download newest resources, skipped docker run --rm -it --name update --volume "agotool_agotool_data:/agotool_data" agotool_flaskapp python ./app/python/update_manager.py # test DB docker exec -it agotool_db_1 psql -U postgres -d agotool_test -f /agotool_data/data/PostgreSQL/copy_from_file_and_index_TEST.psql docker exec -it agotool_db_1 psql -U postgres -d agotool_test -f /agotool_data/data/PostgreSQL/drop_and_rename.psql # populate DB for real docker exec -it agotool_db_1 psql -U postgres -d agotool -f /agotool_data/data/PostgreSQL/copy_from_file_and_index.psql docker exec -it agotool_db_1 psql -U postgres -d agotool -f /agotool_data/data/PostgreSQL/drop_and_rename.psql # change "preload" to True # change "debug" to False vim /var/www/agotool/app/python/variables.py # run the app with new settings docker-compose up -d ##### Pytest run tests in test_userinput.py # test works but flask crashes "error code 247", restart flask with docker-compose up -d docker exec -it agotool_flaskapp_1 pytest -v ./python/test_userinput.py --> /opt/services/flaskapp/src/env_file ## connect container to network docker run --rm -it --network="agotool_db_nw" --name testing --volume "agotool_agotool_data:/agotool_data" --volume "agotool_dbdata:/dbdata" agotool_flaskapp bash # check DB connection cd app/python python import query c = query.get_cursor_docker(host="db", dbname="agotool", user="postgres", password="USE_YOUR_PASSWORD", port="5432") # pass environmental variables at container creation docker run --rm -it --network="agotool_db_nw" --name testing -e POSTGRES_USER="postgres" -e POSTGRES_PASSWORD="USE_YOUR_PASSWORD" -e POSTGRES_DB="agotool" -e APP_SECRET_KEY="USE_YOUR_SECRET_KEY" --volume "agotool_agotool_data:/agotool_data" --volume "agotool_dbdata:/dbdata" agotool bash # ImportMismatchError from pytest docker run --rm -it --network="agotool_db_nw" --name testing -e POSTGRES_USER="postgres" -e POSTGRES_PASSWORD="USE_YOUR_PASSWORD" -e POSTGRES_DB="agotool" -e APP_SECRET_KEY="USE_YOUR_SECRET_KEY" --volume "agotool_agotool_data:/agotool_data" --volume "agotool_dbdata:/dbdata" agotool pytest -v ./app/python/test_userinput.py --> /opt/services/flaskapp/src/app/env_file docker run --rm -it --network="agotool_db_nw" --name testing -e POSTGRES_USER="postgres" -e POSTGRES_PASSWORD="USE_YOUR_PASSWORD" -e POSTGRES_DB="agotool" -e APP_SECRET_KEY="USE_YOUR_SECRET_KEY" --volume "agotool_agotool_data:/agotool_data" --volume "agotool_dbdata:/dbdata" agotool bash ### connect to PostgreSQL container from host psql --host localhost -U postgres -d agotool ### error 247 docker-compose up --> 3 containers running docker exec -it agotool_flaskapp_1 pytest -v ./python/test_userinput.py --> works but error/crash "agotool_flaskapp_1 exited with code 247" docker-compose up -d --> restart flaskapp docker run --rm -it --network="agotool_db_nw" --name testing -e POSTGRES_USER="postgres" -e POSTGRES_PASSWORD="USE_YOUR_PASSWORD" -e POSTGRES_DB="agotool" -e APP_SECRET_KEY="USE_YOUR_SECRET_KEY" --volume "agotool_agotool_data:/agotool_data" --volume "agotool_dbdata:/dbdata" agotool pytest -v ./app/python/test_userinput.py --> py._path.local.LocalPath.ImportMismatchError: ('conftest', '/opt/services/flaskapp/src/python/conftest.py', local('/opt/services/flaskapp/src/app/python/conftest.py')) ERROR: could not load /opt/services/flaskapp/src/app/python/conftest.py Why is there a dicrepancy in the path: docker exec -it agotool_flaskapp_1 bash --> /opt/services/flaskapp/src/python/test_userinput.py vs docker run --rm -it --network="agotool_db_nw" --name testing -e POSTGRES_USER="postgres" -e POSTGRES_PASSWORD="USE_YOUR_PASSWORD" -e POSTGRES_DB="agotool" -e APP_SECRET_KEY="USE_YOUR_SECRET_KEY" --volume "agotool_agotool_data:/agotool_data" --volume "agotool_dbdata:/dbdata" agotool bash --> /opt/services/flaskapp/src/app/python/test_userinput.py docker run --rm -it --volume "/Users/dblyon/modules/cpr/agotool/app/:/opt/services/flaskapp/src" agotool bash docker run --rm -it --network="agotool_db_nw" --name testing -e POSTGRES_USER="postgres" -e POSTGRES_PASSWORD="USE_YOUR_PASSWORD" -e POSTGRES_DB="agotool" -e APP_SECRET_KEY="USE_YOUR_SECRET_KEY" --volume "/Users/dblyon/modules/cpr/agotool/app/:/opt/services/flaskapp/src" agotool pytest -v ./app/python/test_userinput.py $ docker volume ls DRIVER VOLUME NAME local agotool_agotool_data local agotool_dbdata $ docker volume ls DRIVER VOLUME NAME local agotool_agotool_data local agotool_agotool_dbdata local agotool_dbdata ### PYTEST workaround to flask crashing due to unknown reason # run docker without preloading so the website will not work, but the connection to the DB will be established and therefore # the python container will not crash # set PRELOAD = False # pre-load objects DB connection necessary --> fast load # to load DB docker-compose up # repeatedly call the following, while editing pytest tests (flask dies, but DB stays alive and load is quick) docker exec -it agotool_flaskapp_1 pytest -v ./python/test_userinput.py # Debugging docker exec -it agotool_flaskapp_1 pytest -vx ./python/test_userinput.py --pdb docker exec -it agotool_flaskapp_1 pytest -vx ./python/test_query.py --pdb # Code coverage docker exec -it agotool_flaskapp_1 pytest --cov # failed tests run first docker exec -it agotool_flaskapp_1 pytest -vxff ./python/test_userinput.py ### run pytest with separate container, not needing to turn off 'preload' # atlas docker run -it --net agotool_db_nw --env-file /home/dblyon/agotool/app/env_file -v "/home/dblyon/agotool/data/:/agotool_data" -v "/home/dblyon/agotool/app/:/opt/services/flaskapp/src" agotool_flaskapp:latest pytest -vx ./python/test_query.py --pdb # ody docker run -it --net agotool_db_nw --env-file /Users/dblyon/modules/cpr/agotool/app/env_file -v "/Users/dblyon/modules/cpr/agotool/data/:/agotool_data" -v "/Users/dblyon/modules/cpr/agotool/app/:/opt/services/flaskapp/src" agotool_flaskapp:latest pytest -vx ./python/test_query.py --pdb # copy example data # You can think of a trailing / on a source as meaning "copy the contents of this directory" as opposed to "copy the directory by name" docker run --rm -it --volume /Users/dblyon/modules/cpr/agotool:/mounted_data --volume "agotool_agotool_data:/agotool_data" agotool rsync -avr /mounted_data/data/exampledata/ /agotool_data/data/exampledata #### building working DB for STRING version_ # create DBs docker exec -it agotool_db_1 psql -U postgres -d postgres -f /agotool_data/PostgreSQL/create_DBs.psql docker run -it --net agotool_db_nw --env-file /Users/dblyon/modules/cpr/agotool/app/env_file -v "/Users/dblyon/modules/cpr/agotool/data/:/agotool_data" -v "/Users/dblyon/modules/cpr/agotool/app/:/opt/services/flaskapp/src" agotool_flaskapp:latest python ./python/create_SQL_tables.py # populate DB for real docker exec -it agotool_db_1 psql -U postgres -d gostring -f /agotool_data/PostgreSQL/copy_from_file_and_index_STRING.psql docker exec -it agotool_db_1 psql -U postgres -d gostring -f /agotool_data/PostgreSQL/drop_and_rename_STRING.psql docker exec -it agotool_db_1 psql -U postgres -d gostring -f /agotool_data/PostgreSQL/temp.psql docker run -it --net agotool_db_nw --env-file /Users/dblyon/modules/cpr/agotool/app/env_file -v "/Users/dblyon/modules/cpr/agotool/data/:/agotool_data" -v "/Users/dblyon/modules/cpr/agotool/app/:/opt/services/flaskapp/src" agotool_flaskapp:latest pytest -vx ./python/test_query.py --pdb docker run -it --net agotool_db_nw --env-file /home/dblyon/agotool/app/env_file -v "/home/dblyon/agotool/data/:/agotool_data" -v "/home/dblyon/agotool/app/:/opt/services/flaskapp/src" agotool_flaskapp:latest bash docker run -it --net agotool_db_nw --env-file /home/dblyon/agotool/app/env_file -v "/home/dblyon/agotool/data/:/agotool_data" -v "/home/dblyon/agotool/app/:/opt/services/flaskapp/src" agotool_flaskapp:latest python docker run -it --net agotool_db_nw --env-file /home/dblyon/agotool/app/env_file -v "/home/dblyon/agotool/data/:/agotool_data" -v "/home/dblyon/agotool/app/:/opt/services/flaskapp/src" agotool_flaskapp:latest python string_like_output.py # change "preload" to True, change "skip_slow_downloads" to False, change "debug" to False vim /var/www/agotool/app/python/variables.py --> tadaaa it should work now ### scale a service like the flask-app docker-compose up -d --scale flaskapp=2 ############################################################################## # http://agotool-api.meringlab.org/ # aquarius # http://agotool.meringlab.org/ # atlas ToDo: change DB identifiers UPK:9990 --> KW-9990 KEGG:01100 --> map01100 change descriptions for functional associations --> checkout email from PFAM/SMART...
Select Git revision
agotool
-
-
- Open in your IDE
- Download source code
Name | Last commit | Last update |
---|---|---|
.ipynb_checkpoints | ||
app | ||
data/PostgreSQL | ||
.dockerignore | ||
.gitignore | ||
Dockerfile | ||
LICENSE | ||
README.txt | ||
conda_install_agotool.yml | ||
docker-compose.yml | ||
futures_test.py |