Web interface to easily describe and submit epidisco jobs
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 .bashrc or .bash_profile.
export EPIDISCO_WEB_SECRET='something-really-secret'
Before running shell commands, set the FLASK_APP and 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 [email protected]
If not, be sure to set the DISABLE_EMAILS variable to true (export DISABLE_EMAILS=true) so that epidisco-web can be sure you didn't want to send
emails.
Although optional, it is highly recommended that you work within an isolated Python environment (such as conda) for the development:
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
and bundle the Javascript and run Flask:
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 :
flask shell
By default, you will have access to the flask app.
To run all tests, run :
flask test
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.
Content type
Image
Digest
Size
335.1 MB
Last updated
over 9 years ago
docker pull hammerlab/epidisco-web