-
Notifications
You must be signed in to change notification settings - Fork 6
Working
Sowmiya Nagarajan edited this page Mar 21, 2020
·
3 revisions
So how does Stackbox work?
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.
Most services are pre-configured to make sure the frontend and backend can seamlessly connect with each other.
- Exposed on 3306
- Preloaded with database and tables from init.sql
- Exposed on 9200
- Single node cluster
- 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.
- 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.
Dockerized (flask)[https://github.com/Stack-Box/StackBox/tree/master/flask] with clients for all supported services.
Dockerized (vue)[https://github.com/Stack-Box/StackBox/tree/master/vue] with pages for all supported services.