This is the setup repository for the Meditation VR project. It contains a docker-compose.yml
file with the container orchestration of this system.
- Install Docker
- Run
./setup.sh
- This will setup match-making-api and ml-jobs. In addition to that, it will also setup Cassandra DB, a Hadoop Cluster, Kafka, Spark Cluster, Zookeeper and other services needed.
http://localhost:8001
: Kafka Web UIhttp://localhost:3000
andws://localhost:3000/socket.io/?EIO=4&transport=websocket
: Match Making APIhttp://localhost:8080
: Spark Web UI
./up.sh
: Build images and turn on containers./down.sh
: Turn down containers./build.sh
: This will build all the images for all apps./logs-apps.sh
: Logs match-making-apiand eeg-ml-api./logs-infrastructure.sh
: Logsmatch-making-db
,kafka-broker
(broker),kafka-topics-ui
(web-interface) andkafka-zookeeper
,spark-master
,spark-worker
- To check real time logs of the applications, run
./logs-apps.sh
. - To check real time logs of the infrastructure, run
./logs-infrastructure.sh
. - To
ssh
any container:docker ps
docker exec -ti 3912bba70e66 bash
- To stop services, either:
- Run
./down.sh
to stop all services. - Run
docker-compose stop service_name
to stop a specific service.
- Run
- Follow the instructions in this link and this other one
- Download Python 2
- Add
C:\Python27
in thePath
env variable. Callingpython
should trigger Python 2 - Add
C:\Program Files\apache-cassandra-3.11.4\bin
in thePath
env variable. cqlsh -u match_making_user
- Password:
match_making_pw
- Password:
use match_making;
COPY match_making.user_calibrations_eeg_data (pk,userId,calibrationId,eeg,date,label) TO './user_calibrations_eeg_data.csv' WITH HEADER = TRUE;
COPY match_making.user_instructions_eeg_data (pk,userId,eeg,date,predictedLabels) TO './user_instructions_eeg_data.csv' WITH HEADER = TRUE;
COPY match_making.users (userId,name,accessToken,accessTokenExpirationTime,permissions,type) TO './users.csv' WITH HEADER = TRUE;
COPY match_making.user_calibrations (calibrationId,userId,startDate,endDate,modelsGenerated) TO './user_calibrations.csv' WITH HEADER = TRUE;
./ngrok http -subdomain=meditationvr 3000
- Check LICENSE.md for more details