Docker Installation

In order to pull Mastro and Monolith you need to authenticate to our GitHub Container Registry. You can do this by running the following command in your terminal:

docker login ghcr.io -u USERNAME -p <the_access_token>

Then you can pull the images with the following commands:

docker pull ghcr.io/obdasystems/mastro:latest
docker pull ghcr.io/obdasystems/monolith:latest

Mastro Configurations

In order to run Mastro in a Docker container you need to:

  1. Redirect the port exposed by the container (8989).
  2. Mount a volume in the container in order to store the Mastro Home (let’s say /path/to/mastro-home) which relies on the following container path: /var/lib/mastro.
  3. Load the license files in the Mastro Home: copy the license.info and license.key files into the /path/to/mastro-home/license/ folder.
  4. Add the JDBC drivers for the DBMS you want to use in the /path/to/jdbc/ folder and mount a volume in the container in order to store the JDBC drivers which relies on the following container path: /opt/mastro/jdbc.

For example, if you want to run Mastro on port 8989 and you have a mastro-home folder in the /path/to/mastro-home folder and a jdbc folder in the /path/to/jdbc folder, you can run the following command:

docker run -d -p 8989:8989 -v /path/to/mastro-home:/var/lib/mastro -v /path/to/jdbc:/opt/mastro/jdbc ghcr.io/obdasystems/mastro:latest

Monolith Configurations

In order to run Monolith in a Docker container you need to:

  1. Redirect the port exposed by the container (80).
  2. (Optional) Eventually modify the config.js file in order to:
    • specify the deployed URL of the Mastro Web Services
    • configure the JWT authentication mechanism (if you want to use it)
    • enable/disable statstics of usage
    • enable AI features (soon available)

You can do the latter point by creating a new config.js file and add it to a volume mounted in the container. For example, if you want to run Monolith on port 8980 and you have a config.js file in the /path/to/config.js folder, you can run the following command:

docker run -d -p 8980:80 -v /path/to/config.js:/usr/share/nginx/html/config.js ghcr.io/obdasystems/monolith:latest
Previous Next