Welcome to Semarchy.

This tutorial shows you how to set up Semarchy xDM on Docker to run the tutorials available on the Semarchy website.

What you'll learn

What you'll need

Before you start

If you have not already done so, click the button below to download resources such as the sample files that you will use to set up xDM in this tutorial.


The Semarchy xDM architecture includes the following components:

In this tutorial, you will use a Docker Compose file that creates a container that runs Semarchy xDM and a PostgreSQL database:

The Semarchy xDM Docker image is using an official tomcat base image composed of the latest:

The PostgreSQL image is using the official PostgreSQL Docker image.

In the next step, you will start by installing Docker if you have not done so already.

Follow the instructions provided on the Docker website to download and install Docker depending on your operating system:

Install Docker Desktop on Mac

Install Docker Desktop on Windows

Install Docker Engine on Linux

In the next step, you will use Docker Compose to configure and run a Docker container.

You will now configure your Docker container and run it using Docker Compose.

  1. Open the sample docker-compose.yml file in the quick-install/docker folder of the tutorial resources you have downloaded at the beginning of this tutorial. This YAML file defines the services, networks, and volumes to run and use in your Docker container.
  2. Edit this file if you wish to modify parameters such as:
  1. Open the create-schemas.sql script located in the same folder as the Docker Compose file. This script is called by Docker Compose to create the xDM repository database schema as well as all the schemas required to follow the xDM Tutorials.
  1. Edit this file if you want to adjust parameters such as database credentials.
  1. Open a terminal and access the folder that contains the docker-compose.yml and create-schemas.sql files.
  1. Run the following command:
docker compose up --attach semarchy-appserver --no-log-prefix
  1. Wait until the console shows the following line (the whole process may take a few minutes):
INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [12274] milliseconds

Semarchy xDM and its local database are now running in a Docker container. In the next step, you will connect to xDM and configure the repository.

In this step, you will install the xDM instance.

  1. In your browser, connect to http://localhost:8088/semarchy.
  2. Enter the value of the SEMARCHY_SETUP_TOKEN environment variable in the services/semarchy-appserver/environment section of your Docker Compose file (if you have not modified it previously, the default value is mySecretValue) and click LOG IN:

  1. Review the End-User License Agreement (EULA) and select ACCEPT.
  2. Configure the repository and the administrator account and then click INSTALL:

  1. Wait until the repository is installed.

  1. When the instance is ready, click SIGN IN.

  1. Enter the semadmin credentials you defined during the installation, and then click LOG IN.

  1. If you see this page, then you have successfully installed the repository.

xDM is now up and running.

In the next step, you will finalize the installation by granting access rights for some of the tables of the Semarchy repository you have just created.

Now that the repository has been initialized, you must grant access to some of the tables that have just been created: the repository read-only user needs SELECT privileges on the profiling tables to render the xDM Discovery profiles.

Set up a SQL client

To connect to the database running on your Docker container, you need to set up a SQL client.

If you have not installed any SQL client yet, you can install DBeaver, a free universal client. Download DBeaver Community Edition, which is sufficient to follow the Integration tutorials track.


Grant read-only access to repository tables

  1. Connect to the xDM database with your SQL client using the following credentials:
  1. Run the following script to grant to the repository read-only user select privileges on the profiling tables:


** Oracle database post-installation scripts
** Semarchy xDM Tutorials
** Copy and paste the SQL DDL scripts and use them in the tutorial.
** Copyright (c) 2021 Semarchy

Grant select privileges on the profiling tables
GRANT USAGE ON SCHEMA semarchy_repository TO semarchy_repository_ro;
TO semarchy_repository_ro;

Great job! xDM Discovery is now ready to be used on your xDM instance.

Great job going through this tutorial! You have successfully installed xDM on Docker. Let's summarize:

Next steps

Now that you have set up xDM, you can request a license key.

The next step is to proceed to two different tutorial tracks:

  1. How to use xDM applications as a business user, following the Product Retail Demo and the Customer B2C tutorials.
  2. How to design applications as a developer, following the Data Authoring and Data Consolidation tutorials.

Go back to the main menu to find these tutorials.