Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents
minLevel1
maxLevel3

\uD83D\uDCD8 Instructions

Install Docker Compose

Docker is the preferred container-based deployment platform for MaDaM on Linux systems. Docker Compose enables us to define MaDaM as a multi-container application and makes it very easy to run and update MaDaM. Please follow the installation instructions described at the official Docker website. General information can be found at https://docs.docker.com/engine/install/ , detailed information for specific distributions such as Ubuntu can for example be found at https://docs.docker.com/engine/install/ubuntu/ . Please make sure that Docker-Compose was properly installed by issuing the following command on the terminal

...

Code Block
languagebash
docker-compose version 1.29.2, build 5becea4c

Inspect package structure

Directories and files

The MaDaM package consists of

  • a directory containing configuration files for the frontend, backend and KiReporter

  • a directory containing mandatory and optional Docker container images.

  • a file containing values for environment variables

  • the Docker Compose configuration file in YML format

  • a bash script for initially loading the Docker images and starting up MaDaM on Docker compose for the first time

Mandatory & optional Docker images

The software package you received, contains all necessary images for running a complete MaDaM system. All images are included, for cases where the installation target server has no internet connection. Some images are mandatory, others do not need to be used, if the respective service already exists within your IT infrastructure.

...

If you want to use your own instance of a database server, please refer to section Database configuration and adjust files config/MDM-Configuration.json and docker-compose.yml accordingly. Please note, that only PostgreSQL and MySQL are supported and tested database systems. If you want to use a database system of another vendor, please contact Kistler for a custom solution.

Docker Compose configuration file

Docker Compose uses a file called docker-compose.yml as configuration file. It contains settings for each MaDaM service, such as used volumes for persistent data storage and environment variables. For adjusting MaDaM to your IT landscape, almost only the environment variables in this file need to be changed. Depending on your needs, you might also want to change the password for the PostgreSQL container or remove it entirely, if you want to use a different database server. In most of the cases you will need to change the Java heap memory settings of the ElasticSearch container using a line like

Code Block
languagejson
"ES_JAVA_OPTS=-Xms16G -Xmx16G"

in section environment.

Environment variables file

The file called .env is used for quick and clear access to a list of configuration parameters such as host names and network ports. The contained values will be utilized in docker-compose.yml on start-up. This file is optional – the contained configuration parameters can alternatively be directly entered within the section environment within docker-compose.yml.

Create installation directory

We recommend using directory /opt/madam for installation of the application binaries. Create that directory with

Code Block
languagebash
mkdir /opt/madam

and copy all binaries and configuration fies to this location.

Configure mandatory settings

Some mandatory configuration options must be set with each initial installation.

Server host name

The fully qualified host name or IP address of the server running the MaDaM system is specific to the environment in which the system is deployed. Hence it must be configured in file .env.

...

Code Block
languagebash
HOST_FQDN=192.168.xxx.xx

Backend license server

The backend service needs to check against the license server and hence needs the host name or IP address of that license server. This value needs to be configured in file config/MDM-Configuration.json

Code Block
languagejson
"license": {
 "licenseServer": "192.168.xxx.xx"
}

KiReporter license server

The KiReporter needs to check against the license server and hence needs the host name or IP address of that license server. This value needs to be configured in file config/Configuration.xml

Code Block
languagexml
<WebserviceLicenseServer>
  <String>192.168.xxx.xx</String>
</WebserviceLicenseServer>
<ClientLicenseServer>
  <String>192.168.xxx.xx</String>
</ClientLicenseServer>

Database credentials

If the PostgreSQL docker container should be used with MaDaM, at least the database password should be changed. This can be done in file docker-compose.yml

...

Code Block
languagejson
"database": {
 "hibernate.connection.password":"changeme"
}

Persistent data directories

By default, the file docker-compose.yml will mount so-called named volumes like

...

Named volume

Description

Example bind-mount

esdata

Elasticsearch data, e.g. search indices

/opt/madam/esdata :/usr/share/elasticsearch/data

dbdata

PostgreSQL table data

/opt/madam/dbdata:/var/lib/postgr esql/data

filestorage

MaDaM’s measurements and related files

/opt/madam/filestorage:/filestorag e/madam-data

Start MaDaM & services

To run MaDaM after the minimum configuration is done, please execute the shell script named install-madam.sh (or install-madam-demo.sh for the demo version) from within the MaDaM installation directory. Please make sure, that the shell script is executable with command:

...

Once all MaDaM containers are running and after waiting for about one and a half minute after the first boot, please navigate to the web UI using http://192.168.xxx.xx:8080 (please replace the IP by the one you configured for HOST_FQDN in file .env and use https instead, if configured).

Filter by label (Content by label)
showLabelsfalse
max5
spacescom.atlassian.confluence.content.render.xhtml.model.resource.identifiers.SpaceResourceIdentifier@45ba55c
sortmodified
showSpacefalse
reversetrue
typepage
excerptTypesimple
cqllabel = "kb-how-to-article" in ( "linux" , "ubuntu" , "installation" , "docker" ) and type = "page" and space = "MADAM"
labelskb-how-to-article