Install and Run IDM
Use the procedures in this section to install, start, run, and stop IDM.
Follow these steps to install IDM:
Make sure you have an appropriate version of Java installed:
java -version
openjdk version "11.0.6" 2020-01-14 OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.6+10) OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.6+10, mixed mode)
For a description of the Java requirements, see Before You Install.
Download IDM from the ForgeRock BackStage download site. Releases on the ForgeRock BackStage download site are thoroughly validated for ForgeRock customers who run the software in production deployments, and for those who want to try or test a given release.
Unpack the contents of the .zip file into the install directory:
unzip ~/Downloads/IDM-7.0.4.zip
Archive: IDM-7.0.4.zip inflating: openidm/.checksums.csv creating: openidm/bundle/ extracting: openidm/bundle/openidm-audit-7.0.4.jar ...
By default, IDM listens for HTTP and HTTPS connections on ports 8080 and 8443, respectively. To change these port numbers, edit the following settings in your
resolver/boot.properties
file:openidm.port.http
openidm.port.https
When you deploy IDM in production, you must set
openidm.host
to the URL of your deployment, in the sameresolver/boot.properties
file. Otherwise, calls to the/admin
endpoint are not properly redirected.Deployment URLs will vary, depending on whether you're using a load balancer. While IDM documentation does not specify how you'd configure a load balancer, you'll need to configure IDM in a cluster as described in "Configure an IDM Instance as Part of a Cluster", and specifically in "Deploy Securely Behind a Load Balancer".
Before running IDM in production, replace the default embedded DS repository with a supported repository.
For more information, see Select a Repository.
Follow these steps to run IDM interactively:
Start the Felix container, load all services, and start a command shell to allow you to manage the container:
/path/to/openidm/startup.sh
Using OPENIDM_HOME: /path/to/openidm Using PROJECT_HOME: /path/to/openidm Using OPENIDM_OPTS: -Xmx1024m -Xms1024m Using LOGGING_CONFIG: -Djava.util.logging.config.file=/path/to/openidm/conf/logging.properties -> OpenIDM version "7.0.4" OpenIDM ready
\path\to\openidm\startup.bat
"Using OPENIDM_HOME: \path\to\openidm" "Using PROJECT_HOME: \path\to\openidm" "Using OPENIDM_OPTS: -Xmx1024m -Xms1024m -Dfile.encoding=UTF-8" "Using LOGGING_CONFIG: -Djava.util.logging.config.file=\path\to\openidm\conf\logging.properties" -> OpenIDM version "7.0.4" OpenIDM ready
At the OSGi console
->
prompt, you can enter commands such as help for usage, or ps to view the bundles installed.Startup errors and messages are logged to the console by default. You can also view these messages in the log files at
/path/to/openidm/logs
.Alternatively, you can manage the container and services from the Apache Felix Web Console.
Use these hints to connect to the Apache Felix Web Console:
Default URL: https://localhost:8443/system/console
Default user name:
admin
Default password:
admin
Select Main > Components to see core services and their respective states.
You can also start IDM as a background process on UNIX and Linux systems. Follow these steps, preferably before you start IDM for the first time:
If you have already started the server, shut it down and remove the Felix cache files under
openidm/felix-cache/
:shutdown ... rm -rf felix-cache/*
Start the server in the background. The nohup survives a logout, and the 2>&1& redirects standard output and standard error to the noted
console.out
file:nohup ./startup.sh > logs/console.out 2>&1&
[1] 2343
To stop the server running as a background process, use the shutdown.sh script:
./shutdown.sh
Stopping OpenIDM (2343)
Note
Although installations on macOS systems are not supported in production, you might want to run IDM on macOS in a demo or test environment. To run IDM in the background on a macOS system, take the following additional steps:
Remove the
org.apache.felix.shell.tui-*.jar
bundle from theopenidm/bundle
directory.Disable ConsoleHandler logging.
You can stop IDM from the ->
prompt in the OSGi console, or through the Apache Felix Web Console. Both of these options stop the Felix container.
In the OSGi console, enter the shutdown command at the
->
prompt.In the Apache Felix Web Console, select Web Console > System Information to stop the container.
On Unix systems, you can stop IDM by using the shutdown.sh script:
/path/to/openidm/shutdown.sh
Stopping OpenIDM (31391)
Stop the server if it is running, as described in Stop IDM.
Remove the directory where you installed the software:
rm -rf /path/to/openidm
If you use a JDBC database for the repository, drop the
openidm
database.
To debug custom libraries, start the server with the Java Platform Debugger Architecture (JPDA):
Start IDM with the
jpda
option:/path/to/openidm/startup.sh jpda
Executing ./startup.sh... Using OPENIDM_HOME: /path/to/openidm Using OPENIDM_OPTS: -Xmx1024m -Xms1024m -Djava.compiler=NONE -Xnoagent -Xdebug -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=n Using LOGGING_CONFIG: -Djava.util.logging.config.file=/path/to/openidm/conf/logging.properties Listening for transport dt_socket at address: 5005 Using boot properties at /path/to/openidm/resolver/boot.properties -> OpenIDM version "7.0.4" (revision: xxxx) OpenIDM ready
The relevant JPDA options are listed in the startup script (
startup.sh
).In your IDE, attach a Java debugger to the JVM via socket, on port 5005.
Caution
This interface is internal and subject to change. If you depend on this interface, contact ForgeRock support.