Skip to content

Quick Start

Warning

This image is for testing and development purposes only. Use Janssen helm charts for production setups.

Overview#

The quickest way to get a Janssen Server up and running is to install a Docker container-based fully featured Janssen Server.

System Requirements#

System should meet minimum VM system requirements

Install#

Installation depends on a set of environment variables. These environment variables can be set to customize installation as per the need. If not set, the installer uses default values.

Run this command to start the installation:

wget https://raw.githubusercontent.com/JanssenProject/jans/vreplace-janssen-version/automation/startjanssenmonolithdemo.sh && chmod u+x startjanssenmonolithdemo.sh && sudo bash startjanssenmonolithdemo.sh demoexample.jans.io MYSQL "" main

Console messages like below confirms the successful installation:

[+] Running 3/3
 ⠿ Network docker-jans-monolith_cloud_bridge  Created                      0.0s
 ⠿ Container docker-jans-monolith-mysql-1     Started                      0.6s
 ⠿ Container docker-jans-monolith-jans-1      Started                      0.9s

Waiting for the Janssen server to come up. Depending on the resources it may take 3-5 mins for the services to be up.
Testing openid-configuration endpoint.. 

As can be seen, the install script also accesses the well-known endpoints to varify that Janssen Server is responsive.

Verify Installation By Accessing Standard Endpoints#

To access Janssen Server standard endpoints from outside of the Docker container, systems /etc/hosts file needs to be updated. Open the file and add the IP domain record which should be the IP of the instance docker is installed. And the domain used in the env above CN_HOSTNAME.

# For-example
172.22.0.3      demoexample.jans.io

After adding the record, hit the standard endpoints such as

https://demoexample.jans.io/.well-known/openid-configuration

Configure Janssen Server#

  1. Access the Docker container shell using:

    docker exec -ti docker-jans-monolith-jans-1 bash
    
  2. Grab a pair of client_id and client_pw(secret) from setup.properties or /opt/jans/jans-setup/setup.properties.last

  3. Use the CLI tools located under /opt/jans/jans-cli/ to configure Janssen Server as needed. For example you can run the TUI:

    python3 /opt/jans/jans-cli/config-cli-tui.py
    

Uninstall / Remove the Janssen Server#

This docker based installation uses docker compose under the hood to create containers. Hence uninstalling Janssen server involves invoking docker compose with appropriate yml file. Run command below to stop and remove containers.

docker compose -f /tmp/jans/docker-jans-monolith/jans-mysql-compose.yml down && rm -rf jans-*

Console messages like below confirms the successful removal:

[+] Running 3/3
 ⠿ Container docker-jans-monolith-jans-1      Removed                   10.5s
 ⠿ Container docker-jans-monolith-mysql-1     Removed                    0.9s
 ⠿ Network docker-jans-monolith_cloud_bridge  Removed                    0.1s

Last update: 2023-10-19
Created: 2022-10-04