Install on Flynn¶
Flynn is a PaaS system similar to Heroku that you can run on your own hardware.
Prerequisites¶
Start by installing Flynn on your server and installing the flynn
command line on your local machine as described in the Flynn manual: Installation.
The Actual Deploying¶
First, clone the repository from Github and get the latest stable version.
$ git clone git@github.com:bihealth/flowcelltool.git
$ git checkout v0.1.0
Then, create a new Flynn app
$ cd flowcelltool
$ flynn create flowcelltool
Created flowcelltool
Next, provision a PostgreSQL database
$ flynn resource add postgres
Created resource d5d9350d-b55e-4102-a9d3-b5d4bbbd987c and release 56857385-d3ae-4c7e-8259-7fb2e184e064.
Create a Redis database for caching
$ flynn resource add redis
Created resource ba6187e7-1fed-4cb1-ae3f-d9f719d1ce69 and release 83e8b2da-9cc0-4c25-8668-a07c09493a55.
Ensure that the Flowcelltool Django app uses production settings.
$ flynn env set DJANGO_SETTINGS_MODULE=config.settings.production
Set the Django key to something secret and set DJANGO_ALLOWED_HOSTS
.
$ pwgen 100 1
# ensure some random string is printed
zaeFahB5oot3aiciegooheil0iSeis0ufahChaeveujumi3sai8sheequ6weewetushe7jei6veiBohhaiphoefelu0Eiy1nae3S
$ flynn env set DJANGO_SECRET_KEY=$(pwgen 100 1)
$ flynn env set DJANGO_ALLOWED_HOSTS='*'
Finally, deploy the application
$ git push -u flynn master
Setup database using migrate
$ flynn run /app/manage.py migrate
Create a superuser
$ flynn run /app/manage.py createsuperuser
Then follow the instructions of the createsuperuser
command.
Continuing From Here¶
Now, continue with the Getting Started guide or read on Email sending and LDAP authentication in Configure Advanced Features.