Skip to main content
Version: 1.0

Installation

ADM is a Java web application that can either be run via a Docker container package or run as a jar-file from the command line.

Running ADM in a Docker container

Note: This assumes that Docker is already installed, and that the ADM distribution .zip file has been downloaded.

Installing the application

  1. Extract the distribution .zip file to the folder from where you want to run ADM.
  2. Navigate to the docker/ folder of the extracted distribution.
  3. Open the file credentials.txt in a text editor.
  4. Update the placeholder values for Access key ID and Secret access key with the values provided by Axiomatics. (These are the same values that were use in setting up AWS CLI.)
  5. Save and close credentials.txt.
  6. Run docker-compose up --build on the same folder. This starts the installation process.

Note: This step of the installation requires an Internet connection as some components will be downloaded from a secure Axiomatics repository during the process.

When the "Authorization Domain Manager" banner is displayed in the console, the installation is finished and the application is running.

Stopping the application

The application will run in the foreground, thus using CTRL+C will stop the Docker containers and the application will shut down.

Restarting the application

To restart the application, navigate to the docker/ folder inside of the distribution and run:

docker-compose up

Running ADM on the command line

Before running the command to start ADM, the following items must also be set up and available.

  • The Authorization Domain Manager jar file. See Preparing to install ADM.
  • A deployment configuration file. See the section Deployment configuration for a description of the various settings of the deployment configuration file.
  • A user configuration file. This file is referenced in the deployment configuration file, and necessary for user authentication. See Authentication for a description of this configuration.
  • Access to a PostgreSQL database for storage (including JDBC drivers).

Starting the application

ADM is a Java application and needs to be started with the required resources added to the classpath.

On Windows:

java -cp "authorization-domain-manager-<version>.jar;JDBC.jar" com.axiomatics.domainmanager.App server <path\to\>deployment.yaml

On Linux:

java -cp authorization-domain-manager-<version>.jar:JDBC.jar com.axiomatics.domainmanager.App server <path/to/>deployment.yaml

The main class is com.axiomatics.domainmanager.App.

Note: 1. When adding a jar file to the classpath, all of its dependencies must be included. 2. When using the classpath option to retrieve files, the files must either be packaged in a jar or zip file, or accessed using the directory reference to where the file is located.

When the "Authorization Domain Manager" banner is displayed in the console, the application is running.

Configuration validation

The check command parses and validates the configuration of the application.

java -jar authorization-domain-manager-<version>.jar check <path/to/>deployment.yaml

It can be used to verify that the deployment configuration file and the user file are correct.

By default, errors are output to stderr, for example:

<path/to/>deployment.yaml has an error:
* auth Authentication configuration is missing

If no errors are found, an OK message is given.

Checking that ADM is running

To verify that everything is running smoothly, you can run a simple healthcheck by running a GET request:

  GET http://localhost:8081/healthcheck

This will result in Status: 200 OK and a JSON reply, like the following:

{
"DomainManager": {
"healthy": true,
...
},
"deadlocks": {
"healthy": true,
...
},
"postgresql": {
"healthy": true,
...
}
}

Next steps

  • The instructions above assume ADM is started with a basic deployment configuration file. This file can be further edited to adapt to your configuration requirements. See the section Deployment configuration for more information.
  • There are also additional configurations you may want to consider for your implementation of ADM. See the section Additional configuration for more information.