VRE Backend API and Scheduler
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

2.0 KiB

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> </head>

Installation

The Virtual Research Environment will be installed with a docker compose setup. This way the hole platform is up and running within minutes.

First we need to checkout the code.

git clone https://git.web.rug.nl/VRE/Broker.git

Docker

Make sure you have Docker and Docker-Compose installed. On Debian based systems you can install it with the following setup https://docs.docker.com/engine/install/debian/

Run the following commands and a complete production setup is created.

cd Broker
docker-compose up

The docker setup is created according to the docker-compose.yaml in the root directory. This will create a own virtual network and some persistent storage volumes.

The following persistent volumes are created:

  • Postgress data. This is used for Postgress database files
  • Redis data. This is used for Redis storage
  • TUSD data. This is used for the temporary file uploads that are being processed
  • Static files data. This is used for Django static files served by NGINX

During installation the following docker containers will be created:

  • Postgress DB server
  • Redis DB server
  • The Upload Service Daemon sever (TUSD)
  • Django REST API server
  • Django background scheduler server
  • NGINX TUSD frontend server
  • NGINX API frontend server

And there will be two extra docker containers running a demo site to communicate with the REST API

  • Django demo portal server
  • NGINX demo frontend server

Only the NGINX containers have an connection with the outside world. By default you have:

Settings

You can change the Docker setup by changing the settings in the file docker/project.env. Every setting has some explanation what is does or where it is fore.

System Message: ERROR/3 (<stdin>, line 63)

Unknown directive type "literalinclude".

.. literalinclude:: ../docker/project.example.env
    :language: bash
</html>