You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Sowmiya Nagarajan edited this page Mar 21, 2020
·
3 revisions
So how does Stackbox work?
Docker infra
The whole project is based out of a docker-compose based core.
master.yaml has a master list and docker services config for all stackbox supported services
stack_box.sh is the starting point. It makes use of stack.py to generate a docker-compose.yaml from the master.yaml based on the params.
stack_box.sh then uses the generated docker-compose.yaml to up the containers with any configurations if necessary
All the containers thus end up communicating with each other on the same docker-network. The frontend, backend and services are bought together by this infra.
Services
Most services are pre-configured to make sure the frontend and backend can seamlessly connect with each other.
Populated in the stack index with some data. Flask example - elasticsearch.py
Can be bought up along with kibana (another stackbox supported service) to aid in querying.
3. Kafka
Exposed via flask-sockets. Flask example - produce and consume from stackbox kafka topic.
Standalone python scripts consumer.py and producer.py can also be used to test the kafka setup.
(index.html)[https://github.com/Stack-Box/StackBox/blob/master/kafka/index.html] has barebones ajax and html to connect to flask-kafka to produce and consume messages.
Backend Clients
1. Flask
Dockerized (flask)[https://github.com/Stack-Box/StackBox/tree/master/flask] with clients for all supported services.
Frontend Clients
1. Vue
Dockerized (vue)[https://github.com/Stack-Box/StackBox/tree/master/vue] with pages for all supported services.