Skip to content
Snippets Groups Projects

Containerized Multi-Criteria Decision Analysis Web Service

1. Description

This project contains the code to implement a containerized micro web service providing Multi-Criteria Decision Analysis (MCDA, or Multi Criteria Analsys - MCA).

This work has been developed within the activities of the RiskGONE project.

2. Installation

Requirements

  • Docker
  • A web browser, if there is need to access the service through notebooks

Download

To download the container from NILU's registry, just pull it:

docker pull docker.nilu.no/ribo/mca_service

Execution

To run the container as a service on the local machine use (please note that it maps 2 ports to publish both the service and the pluto notebook):

docker run -p 8080:8080 -p 1234:1234 -t docker.nilu.no/ribo/mca_service

3. Usage

Detailed instructions on how to use and extend the service are available both for the web service and for the docker container that makes available the container.

A good starting point is the included example notebook that can be reached at http://IP_ADDRESS:1234/open?path=%2Fnotebook%2FMCA_calculator.jl when the container image is running.

Inputs and Outputs

The service instructions include also a detailed description of inputs and outputs and references to the API documentation, which is also available as PDFs here.

Technical Design

Technically, the code is split in two main directories.

The docker directory contains code to prepare the container. It requires to copy there and including the most up to date jar of the micro service.

The web_service directory contains the Maven project in Java implementing a micro web service based on SpringBoot.

4. References

5. Citation

https://doi.org/10.5281/zenodo.7467912

6. License

GPLv3 Logo

7. Funding

This work has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 814425.