# ladylilia.com ## Project structure * `api` - Flask application implementing RESTful API for querying/manipulating database of quotes * `cms` - Grav CMS (Content Management System) * `ng-app` - Angular application for browsing quotes * `nginx` - Configuration of NGINX web server ## Deployment This project consists of 3 container images (`api`, `cms` and `nginx`), that depend on each other - they need to run simultaneously and share certain data between themselves. Easiest way how to manage that is using `docker-compose`. Just copy `docker-compose.yaml.example` into `docker-compose.yaml`, make necessary adjustments and fire it all up with: ```BASH docker-compose up -d ``` ## API key generation API key is needed for `POST`, `PUT` and `DELETE` API methods. If the `api` container is running, the key can be generated like this: ```BASH docker exec $API_CONTAINER_NAME python generate_api_key.py $USERNAME $EXPIRATION_TIME_IN_SECONDS ```