Docker
This PR makes building an official docker image possible. I would still consider this a work in progress and needs further testing, however I wanted to open it up to gauge interest in actually merging it.
- Restructures the
demoto just use the official docker image (once it's made) - Restructures the contents of demo into
app/to build an actual django app inside the docker image. - Introduces a multi-stage docker image that will assemble all the pieces required to run response.
- Ensures that all settings can be set via environment variables.
How To Test
- clone my fork
- docker build -t response .
cp demo/env.example demo/.envand modify with settingscd demo && docker-compose up -d
Docker Image Setup
The django app is simply installed to /app and response is installed as an actual python module in Stage 1 of the docker build. In the final stage all install python modules are pulled down and made available in the final image, keeping the final image as small as possible.
The docker image utilizes a entrypoint script that was adapted from the demo script, and can be adapted further to support setting an ADMIN user/pass via environment variables. The script ensures the database is up, migrations are run, and then starts uwsgi up to run the django app.
TODOS
These are possible todos I'd like to do still if there's interest.
- [ ] include helm chart
- [ ] include kubernetes manifests/kustomize manifest