nopaque/README.md
2019-08-26 10:26:37 +02:00

50 lines
1.6 KiB
Markdown

# Opaque
## Dependencies
- Docker: https://www.docker.com/
- Python 3.5+
## Setup
1. Create Docker swarm
The generated computational workload is handled by a [Docker](https://docs.docker.com/) swarm. A swarm is a group of machines that are running Docker and joined into a cluster. It consists out of two different kinds of members, managers and workers. Currently it is not possible to specify a dedicated Docker host, instead Opaque expects the executing system to be a swarm manager of a swarm with at least one dedicated worker machine. The [swarm setup](https://docs.docker.com/engine/swarm/swarm-tutorial/) process is described best in the Docker documentation.
2. Create shared network storage
2. Get the source code and navigate into the code directory
```
git clone https://gitlab.ub.uni-bielefeld.de/sfb1288inf/opaque.git
cd opaque
```
2.1 Create a configuration file
```
touch .env
# Account information of a mail account for sending emails to opaque users.
echo "MAIL_USERNAME=opaque@example.com" >> .env
echo "MAIL_PASSWORD=password" >> .env
echo "MAIL_SERVER=smtp.example.com" >> .env
echo "MAIL_PORT=587" >> .env
echo "MAIL_USE_TLS=true" >> .env
# A user registering with this email address will automatically promoted as an admin.
echo "OPAQUE_ADMIN=admin.opaque@example.com" >> .env
# Absolut path to an existing directory to save all opaque files.
echo "OPAQUE_STORAGE=/opaque/storage" >> .env
```
2.2
Create Python virtual environment, activate it and install the required python packages.
```
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
```