- Technologies:
- AngularJS
- NodeJS
- SocketIO
- ACE editor API
- Autho0
- Redis
- MongoDB
- Docker
- Flask
- Nginx
- RESTful API
- JavaScript
- Python
- How-To:
-
How to start Nginx server: sudo nginx -s signal
signal: stop - fast shutdown quit - graceful shutdown reload - reloading the configuration file reopen - reopening the log files
-
Copy configuration files from 'sites-available' to 'sites-enabled': ln -s ../sites-available/example ./example
-
Change hosts file: cat /etc/hosts
-
Install nginx by homebrew brew install nginx
-
To run the program: a. Go to oj-client folder: run 'ng build -watch' b. Go to oj-server folder: run 'nodemon server.js' c. Go to redis-3.2.9 2/src/: run 'redis-server'
-
Installed node-rest-client: node i --save node-rest-client To make the oj-server as a client that can sent rest requests
-
Installed flask: sudo pip install --upgrade pip sudo pip install flask
-
To run flask server: python executor_server.py
-
docker: docker ps -a docker images stop all containers: docker stop
$(docker ps -a -q) remove all containers: docker rm $ (docker ps -a -q) build: sudo docker build . -t jylock/cs503_1703 login: docker login push: docker push jylock/cs503_1703 pull: docker pull jylock/cs503_1703 delete all images: docker rmi $(docker images -a -q) -
install docker so that python can communicate with docker, just like nodejs communicate with reddis sudo pip install docker
-
Need to have oj-client, oj-server, executor_server, redis, and nginx running simutaneously