ADIOS - I-NERGY - Backend Resources
Frontend and backend docker container for the application
The backend resources contains the endpoints that are responsible for the data analytics tasks like uploading files, scheduling them, checking statuses, scheduling of the machine learning script executions, getting results from the scheduled scripts and in general acting as an interface between the user interface, database and multi process importer module enabling all of them to work together.
This docker container contains libraries used by the both backend and frontend as well as backend and frontend code required for the prototype application. It exposes REST API and interacts with Timescale DB.
To deploy the container the following scripts are created:
build_and_push.sh - builds and pushes the image to docker hub
build_and_push_lib - builds and pushes libraries container to docker hub which is used as base image for the backend container
build_backend.sh - builds backend code
build_frontend.sh - builds frontend code including running webpack and setting manifest file
inergy_frontend_conf.txt - contains configuration of root urls for the frontend
build_images.sh - builds docker images
create_networks.sh -creates docker network
docker_hub_login_example.sh - if you use private docker hub this example shows how to login before pushing the images
down.sh - stops all containers
dump_db.sh - dumps database in mapped docker container folder
make_release.sh - makes release by copying required files for standalone deployment
push_images.sh - pushes built docker container images to the docker hub
restore_clean_db.sh - restores empty database into TimescaleDB docker container
set_setting.sh - sets multi process importer script setting related to enabling/disabling certain importer processes
set_setting_default.sh - sets default settings for multiprocess importer (enabling all processes)
touch_logs.sh - touches the logs so that they correctly can be mapped by docker volume command
up.sh - starts all containers in inergy.yml docker compose file
inergy.yml - docker compose file for the project including all required services
frontend_build.yml - docker compose file used for building frontend code