This page describes a docker-compose based orchestration running on your local machine and accessible via browser.

The code examples in this section assumes that you have POSIX-compliant shell (linux, macOS or WSL for Windows).


  • Access credentials to eccenca Artifactory and eccenca Docker Registry → contact us to get yours
  • docker and docker-compose installed locally
  • git installed locally
  • At least 4 CPUs and 12GB of RAM (recommended: 16GB) dedicated to docker

Setup & Check Installation Environment

Download the Corporate Memory docker orchestration from eccenca Artifactory.

Open a terminal window, create a directory, copy and extract docker orchestration there.

# create eccenca-corporate-memory directory in your ${HOME} and set as a working dir

$ mkdir ${HOME}/eccenca-corporate-memory && cd ${HOME}/eccenca-corporate-memory

# cp Corporate Memory docker orchestration distribution in the local directory
# Change VERSION to the version you have downloaded e.g. v20.03

$ cp ${HOME}/Downloads/ ./
$ unzip
$ rm
$ git init && git add . && git commit -m "stub"

Check your local environment:

# run the following command (without $) to check your docker server version, should be at least 19.03
# to have the current security patches, always update your docker version to the latest one

$ docker info | grep -i version
Server Version: 19.03.8

# check docker-compose version, should be at least 1.25.0
# update to the latest version if necessary

$ docker-compose --version
docker-compose version 1.25.4, build 8d51620a

# login into eccenca docker registry

$ docker login
Username: yourusername
Login Succeeded


To install Corporate Memory, you need to modify your local hosts file (located in /etc/hosts), minimal configuration is as follows:

# Host Database
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##	localhost   docker.local   corporate.memory 

Corporate Memory uses stardog triple store as a backend. Stardog requires a license:

# if you have a license copy it to conf/stardog/stardog-license-key.bin
# for example

$ cp ~/Downloads/stardog-Eccenca-Developer-license-key.bin conf/stardog/stardog-license-key.bin

Check validity of your stardog license with `make stardog-license-check` command:

$ make stardog-license-check
docker run -it --rm --name stardog-license-check -v data:/data -v /Users/ivanermilov/eccenca-corporate-memory//conf/stardog/stardog-license-key.bin:/data/stardog-license-key.bin stardog-admin license info /data/stardog-license-key.bin
Licensee:	Eccenca User (, Eccenca
Type:		Subscription
Issued:		Mon Jan 20 19:39:39 GMT 2020
Expiration:	286 days
Support:	286 days
Quantity:	1

In case you do not have stardog license or your license has expired, request a trial license using `make stardog-license-request` command:

# if stardog-license-check is failing with invalid or expired license

$ make stardog-license-check
docker run -it --rm --name stardog-license-check -v data:/data -v /Users/ivanermilov/eccenca-corporate-memory//conf/stardog/stardog-license-key.bin:/data/stardog-license-key.bin stardog-admin license info /data/stardog-license-key.bin
The license is invalid:
make: *** [stardog-license-check] Error 1

# request stardog trial license

$ make stardog-license-request
docker run -it --rm --name stardog-license-check -v data:/data -v /Users/ivanermilov/eccenca-corporate-memory//conf/stardog/stardog-license-key.bin:/data/stardog-license-key.bin stardog-admin license request --force --output /data/stardog-license-key.bin
Thank you for downloading Stardog.
A valid license was not found in /data.
Would you like to download a trial license from Stardog (y/N)? y
Contacting Stardog...............
Please provide a valid email address to start your 60-day trial (we may occasionally contact you with Stardog news):
Contacting license server.....................
Email validated. You now have a 60-day Stardog trial license. Starting Stardog...
                          .⌐⌐.                     .½▓█▌░░░░░░░░░▀▄
                     ⌐Γ░░░░░░░░░░Γ«⌐              ≤░▓███▓▓▌▄░░░░░▓▒█Γ⌐
          .≥░░░░░░░░░░░░░░░░░░░░░░░░░░░░░╢▒▒▓▓▒▒▒░░░░╟██████╙ └█b  ████▀▀▒█████▌
 Γ    .∩░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒▒▒▒▒▒░░░██████`   ╙   ╟█▓∩  ███▀██▌
├░, .░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒▒▒░░░╫██████        ▐█    ██    ╙
├░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒░░░░▓██████          ,  '  ▄
 ░░░░░░░░░░░░░░░░░░░░░░░░░░░░▄▄▄░░░░░░░░░░░░░░░░░░░░▓██████▓░░░░╕    ▐█▄   ██
.░░░░░░░░░░░░░░░░╣▄░░░░░▄╣▓██████▓▄░░░░░░░░░░░░░░░░░╢████████▒██░░╣   ██▄▄╣▒▒▌▄▄
 ░░░░░░░░░░░░░░,  └╙▀▀██████████████▓░░░░░░░░░░░░░░░░██████████▌░░░╦  █▒██████▌
 ╙░░░░░░░░░░░░░░░       ╙▀███████████░░░░░░░░░░░░░░▓░░█████▀▀▀░░░░░╬▒█████████
  '╙░░░░░░░░░▄▄▄`          └▀███████░░░░░░░░░░░░░░║██▓▄░▀▀░░░░░░░░░Γ "╙░░░░▀▀
    ╙░░▄╣▓▓██▀▀               ╙▀███▌░░░░░░░░░░░░░╢█████⌐   ╙░░░░░░░
    └╣███▀▀└                     ╙▀░░░░░░░░░░░░░╣████▀       '""`
Thank you!

# check that you have a valid license now

$ make stardog-license-check
docker run -it --rm --name stardog-license-check -v data:/data -v /Users/ivanermilov/eccenca-corporate-memory//conf/stardog/stardog-license-key.bin:/data/stardog-license-key.bin stardog-admin license info /data/stardog-license-key.bin
Licensee:	Stardog Trial User (, Stardog Union
Version:	Stardog *
Type:		Trial
Issued:		Sun Mar 29 12:03:25 GMT 2020
Expiration:	59 days
Support:	The license does not include maintenance.
Quantity:	3

Run the command to clean workspace, pull the images, start the Corporate Memory instance and load initial data:

$ cd ${HOME}/eccenca-corporate-memory

# Pulling the images will take time

$ make clean-pull-start-bootstrap

You should see the output as follows:

/usr/local/bin/docker-compose kill
/usr/local/bin/docker-compose stop
/usr/local/bin/docker-compose down --volumes --remove-orphans
Removing network dockerlocal_default
Removing volume dockerlocal_stardog
/usr/local/bin/docker-compose rm -v --force
No stopped containers
Removing data/dataplatform/shui-vocab/includes/widoco/
Pulling apache2         ... done
Pulling datamanager     ... done
Pulling dataintegration ... done
Pulling stardog         ... done
Pulling dataplatform    ... done
Pulling postgres        ... done
Pulling keycloak        ... done
Creating network "dockerlocal_default" with the default driver
Creating volume "dockerlocal_stardog" with default driver
Creating dockerlocal_apache2_1     ... done
Creating dockerlocal_stardog_1         ... done
Creating dockerlocal_postgres_1        ... done
Creating dockerlocal_datamanager_1     ... done
Creating dockerlocal_dataintegration_1 ... done
Creating dockerlocal_keycloak_1        ... done
Creating dockerlocal_dataplatform_1    ... done
Waiting for healthy orchestration...................... done
CMEM-Orchestration successfully started.
Run make logs to see log output

Initial Login / Test

Open your browser and navigate to http://docker.local

Click CONTINUE WITH LOGIN and use one of these default accounts:

adminadminIs member of the global admin group (can see and do anything)
useruserIs member of the local user group (can not change access conditions or see internal graphs)


After successful login, you will see Corporate Memory interface. You can now proceed to the ► Getting Started section.