ProceZeus
Documentation
You can learn more about ProceZeus by visiting the official documentation page. These docs were generated with mdBook.
Getting Started
Prerequisites
All of the project's services are split into separate Docker images. All application dependencies are contained within the Docker images. The dependencies required to run this project locally are:
docker
docker-compose
Installing
To install Docker and Docker Compose, you can follow the instructions here.
Running the Entire Application Stack
We've developed a script to help with running the entire application with all its components. It's a thin wrapper around docker-compose
, so all docker-compose
will work for it. All you need is:
./cjl build && ./cjl up
If you want to suppress output push the job to the background:
./cjl up -d
Docker isn't always the best at determining diffs between images. If that happens, you can destroy all Docker images on your host with:
./cjl clean [-y]
To run all tests and lints for all services:
./cjl test
To try to fix all linting errors for all services:
./cjl lint-fix
In order to shut down all containers:
./cjl down
Finally, if you want to reset the database (Helps with inconsistent database states), you can run:
./cjl reset-db
The cjl
script also takes any other command that docker-compose
can take.
Running or Testing Specific Services
The following services can run individually or tested against:
- Web Client
- Backend Service
- Machine Learning Service
- Natural Language Processing Service
- PostgreSQL Database
Deployment
Deployment is done via Travis CI and Ansible. The most current version of the master branch is reflected on the Demo Page
Architecture
The following architecture diagram represents the various services and the relationships they have with one another.
Contributing
See CONTRIBUTING.md for details.
Versioning
See the releases tab
Authors
The following is a list of team members that are contributing to the project:
License
This project is licensed under the MIT License - see the LICENSE file for details