Get Started #
With Docker #
Pull the universalid/scim
image from Docker Hub:
docker pull universalid/scim:1.0.1
Pre-requisites #
The Universal ID Server requires a PostgreSQL database connection and a configuration profile.
Download & install PostgreSQL
The application is shipped with a built-in a Development profile that can be enabled with the
dev
flag so that it can be started with zero-config for testing.
By default, the application will try to a PostgreSQL database with the default settings:
Parameter |
Default Value |
---|---|
host |
localhost |
port |
5432 |
database |
postgres |
user |
postgres |
password |
postgres |
To change the parameters check out the Datasource configuration options
Run #
Run the Universal ID Server application:
docker run -t --net=host universalid/scim:1.0.1 dev
-t
attaches a pseudo-TTY to the container, connecting your terminal to the I/O streams of the container.--net=host
uses host network. Alternatively, you can pass each port mapping individually. e.g.-p 8080:8080
dev
loads the development profile.
Application will start listening on:
http://localhost:8080/Users
Dev profile #
The application has a built-in dev
profile for development and testing. It starts the application
with DEBUG
logging enabled, listens to http port: 8080
and connects to a
PostgreSQL database at the default port 5432
with default settings. It will also
load the SCIM core User schema urn:ietf:params:scim:schemas:core:2.0:User
along with two example
extensions urn:se:universalid:extension:Device
and urn:se:universalid:extension:Computer
.
More info about:
Custom profile #
To run the application with a customized profile, you will need to create two directories
/config
, /crypto
and mount them to the application container.
/config
directory contains theapplication.yaml
with the application configuration./crypto
directory the Server Keystore and Truststore used for HTTPS and mTLS.
Example command how to start a profile named custom
and mount the directories above:
docker run -t --net=host \
--mount type=bind,src=/path/to/universalid/config,dst=/deployments/config \
--mount type=bind,src=/path/to/universalid/crypto,dst=/deployments/crypto $IMAGE_NAME custom
Deploy in a Cloud Provider #
Universal ID Server can be deployed on-premise or in any Cloud environment.
Deploy on Kubernetes with a Helm chart for a simplified operation and management of your Universal ID cluster.
For help, tips & tricks for deploying to AWS, Azure, Google Cloud Platform or your Cloud provider of choice contact us and we’ll help you get started.