Stand-Alone Deployment

Last modified 02 Jul 2024 14:22 +02:00


MidPoint is deployed as a stand-alone server process. MidPoint distribution package contains everything that is needed to start up and run midPoint. Web container (Apache Tomcat) and all the necessary components are bundled inside midPoint distribution. In addition to that, midPoint is a Java application therefore it is platform-independent. Therefore all that is needed to run midPoint is to download it, unpack it and start it. MidPoint server process will start up. It will listen on HTTP port 8080.

The distribution archive contains a single directory (e.g. midpoint-4.4) which is safe to rename after unpacking. This directory is referred to as midPoint installation directory or simply installation directory. This is distinct from midPoint home directory, or midpoint.home, which contains runtime configuration, logs, etc.

Please have a look at the MidPoint Quick Start Guide page for basic installation instruction for the purposes of midPoint evaluation or demo. See Installing MidPoint Server page for full installation instructions.

Run Control

MidPoint distribution package provides convenient scripts to start and stop midPoint service. Those scripts are located in the bin directory.

Linux (UNIX)

Starting midPoint (Linux)
Stopping midPoint (Linux)

The and scripts are just simple wrappers for script. The script is where all the action happens. This script can also be invoked directly:

Using script (Linux)
bin/ start
bin/ stop

The script may provide more run control and diagnostics capabilities in the future. See also page.


Starting midPoint (Windows)
Stopping midPoint (Windows)

Installation Directory

The entire midPoint system lives inside the installation directory unless it is configured otherwise. Therefore the choice of installation directory is important. Those are recommended locations for midPoint installation directory:

Operating system Location

Linux, UNIX



C:\Program Files\midpoint

Installation Directory Layout

The installation directory has the following layout:

Directory Content Access Description


Start/stop scripts and other "binaries"

Read only

The scripts are platform-dependent. There are separate scripts for UNIX-like systems (Linux) and Windows.


Documentation, samples, …​

No access needed

Those files are not required to run midPoint at all. The files just provide additional information. Those files may be removed if not needed.


Library files (JAR/WAR)

Read only

Files in this directory contain bulk of compiled midPoint code. The compiled files are platform-independent.


Default midPoint home directory, also known as midpoint.home. Initial configuration, cryptographic keys, log files and similar "variable" content.


See MidPoint Home Directory.


No access needed

Those files are not required to run midPoint at all. The files just provide additional information. Those files may be removed if not needed.

The "Access" column specifies what access to the directory is needed by midPoint itself. This information can be used to set up proper file system permission, e.g. in case of system hardening.

MidPoint Repository (Database)

MidPoint comes with an embedded database engine (H2) that is perfectly suitable for testing and demo installations. This database will be used by midPoint after the installation. Therefore there is no need to set up a separate database if installing midPoint for the first time. The database files will be stored in midPoint home directory.

The database can later be changed to a full-scale database engine. The Repository Configuration page provides the instructions.

Java Memory Setting and Other Options

Java memory setting and other JVM options are controlled by the scripts that start midPoint process.

In Linux (UNIX) environment it is the script where it all happens. Java options are specified at the beginning of the script. The easiest option to control the options is to directly edit the script. Better options may be implemented in the future.

In Windows there is a similar midpoint.bat script. This script is somehow limited in capabilities, but it is sufficient for the purpose. Java option can be changed by modifying this script.


Stand-alone deployment is a primary deployment mode now. However, stand-alone deployment was introduced in midPoint 3.7. Before that midPoint was distributed in Java web application form (WAR) and required deployment to a web container (application server) to run.

WAR-based still supported as an alternative deployment model. However, it is deprecated, and it may be removed soon.

Was this page helpful?
Thanks for your feedback