Web interface to easily describe and submit epidisco jobs
Using the docker image
If you would like to deploy Epidisco Web using Docker,
you can use the one the ready-to-go images from dockerhub:hammerlab/epidisco-web:
$ docker pull hammerlab/epidisco-web # Simple settings $ export NUMOFWORKERS=1 $ export EPIPORT=8000 # Run the image in daemon mode (where gunicorn serves the website) $ docker run -d -p $EPIPORT:$EPIPORT hammerlab/epidisco-web -w $NUMOFWORKERS -b 0.0.0.0:$EPIPORT
and browse to localhost:8000.
First, set your app’s secret key as an environment variable. For example, add
the following to
Before running shell commands, set the
FLASK_DEBUG environment variables:
export FLASK_APP=/path/to/epidisco-web/autoapp.py export FLASK_DEBUG=1
As well as your Mailgun keys, if you'd like to send emails:
export MAILGUN_DOMAIN=mail.example.com export MAILGUN_API_KEY=key-foo export MAILGUN_VALIDATION_KEY=pubkey-foo export ADMIN_FROM_EMAILfirstname.lastname@example.org
If not, be sure to set the
DISABLE_EMAILS variable to
DISABLE_EMAILS=true) so that epidisco-web can be sure you didn't want to send
Although optional, it is highly recommended that you work within an isolated
Python environment (such as conda) for
conda create -n eweb python=3 source activate eweb
Then run the following commands to bootstrap your environment:
git clone https://github.com/armish/epidisco-web cd epidisco-web pip install -r requirements/dev.txt npm install
npm run bundle flask run
Browsing to localhost:8080, you will see a pretty welcome screen.
Once you have installed your DBMS, run the following to create your app’s
database tables and perform the initial migration :
flask db init flask db migrate flask db upgrade flask run
In your production environment, make sure the
FLASK_DEBUG environment variable
is unset or is set to
0, so that
ProdConfig is used.
To open the interactive shell, run :
By default, you will have access to the flask
To run all tests, run :
Whenever a database migration needs to be made. Run the following commands :
flask db migrate
This will generate a new migration script. Then run :
flask db upgrade
To apply the migration.
For a full migration command reference, run
flask db --help.