Ping Identity DevOps Docker Image - pingtoolkit
This docker image includes the Ping Identity PingToolkit and associated hook scripts to create a container that can pull in a SERVER_PROFILE run scripts. The typical use case of this image would be an init container or a pod/container to perform tasks aside a running set of pods/containers.
Related Docker Images
-
pingidentity/pingbase-java- Parent Image
Environment Variables
The following environment ENV variables can be used with this image.
| ENV Variable | Default | Description |
|---|---|---|
BASE |
${BASE:-/opt} |
|
JAVA_HOME |
/opt/java |
|
STAGING_DIR |
${BASE}/staging |
Path to the staging area where the remote and local server profiles can be merged |
OUT_DIR |
${BASE}/out |
Path to the runtime volume |
SERVER_ROOT_DIR |
${OUT_DIR}/instance |
Path from which the runtime executes |
IN_DIR |
${BASE}/in |
Location of a local server-profile volume |
SERVER_BITS_DIR |
${BASE}/server |
Path to the server bits |
BAK_DIR |
${BASE}/backup |
Path to a volume generically used to export or backup data |
LOGS_DIR |
${BASE}/logs |
Path to a volume generically used for logging |
STAGING_MANIFEST |
${BASE}/staging-manifest.txt |
Path to a manifest of files expected in the staging dir on first image startup |
CLEAN_STAGING_DIR |
false |
Whether to clean the staging dir when the image starts |
SECRETS_DIR |
/run/secrets |
Default path to the secrets |
TOPOLOGY_FILE |
${STAGING_DIR}/topology.json |
Path to the topology file |
HOOKS_DIR |
${STAGING_DIR}/hooks |
Path where all the hooks scripts are stored |
CONTAINER_ENV |
${STAGING_DIR}/.env |
Environment Property file use to share variables between scripts in container |
SERVER_PROFILE_DIR |
/tmp/server-profile |
Path where the remote server profile is checked out or cloned before being staged prior to being applied on the runtime |
SERVER_PROFILE_URL |
A valid git HTTPS URL (not ssh) |
|
SERVER_PROFILE_URL_REDACT |
true |
When set to "true", the server profile git URL will not be printed to container output. |
SERVER_PROFILE_BRANCH |
A valid git branch (optional) |
|
SERVER_PROFILE_PATH |
The subdirectory in the git repo |
|
SERVER_PROFILE_UPDATE |
false |
Whether to update the server profile upon container restart |
SECURITY_CHECKS_STRICT |
false |
Requires strict checks on security |
SECURITY_CHECKS_FILENAME |
*.jwk *.pin |
Perform a check for filenames that may violate security (i.e. secret material) |
UNSAFE_CONTINUE_ON_ERROR |
If this is set to true, then the container will provide a hard warning and continue. |
|
PING_IDENTITY_DEVOPS_FILE |
devops-secret |
File name for devops-creds passed as a Docker secret (sourced from /run/secrets by pingcommon.lib.sh at source time) |
PING_IDENTITY_ACCEPT_EULA |
NO |
Legal requirement to explicitly accept the terms of the PingIdentity License (v1 pingbase carrier default; 17-check-license.sh reads it) |
PING_IDENTITY_DEVOPS_KEY_REDACT |
true |
Redacts PING_IDENTITY_DEVOPS_KEY in 04-check-variables.sh output |
LICENSE_DIR |
${SERVER_ROOT_DIR} |
License directory |
STARTUP_COMMAND |
tail |
The command that the entrypoint will execute in the foreground to instantiate the container |
STARTUP_FOREGROUND_OPTS |
-f /dev/null |
The command-line options to provide to the startup command when the container starts with the server in the foreground. This is the normal start flow for the container |
STARTUP_BACKGROUND_OPTS |
The command-line options to provide to the startup command when the container starts with the server in the background. This is the debug start flow for the container |
|
TAIL_LOG_FILES |
A whitespace separated list of log files to tail to the container standard output - DO NOT USE WILDCARDS like /path/to/logs/*.log |
|
COLORIZE_LOGS |
true |
If 'true', the output logs will be colorized with GREENs and REDs, otherwise, no colorization will be done. This is good for tools that monitor logs and colorization gets in the way. |
LOCATION |
Docker |
Location default value |
LOCATION_VALIDATION |
true |
Validation toggle for LOCATION: true to require any string denoting a logical/physical location, false to disable the check |
VERBOSE |
false |
Triggers verbose messages in scripts using the set -x option. |
PING_DEBUG |
false |
Set the server in debug mode, with increased output |
PING_PRODUCT |
PingToolkit |
The name of Ping product, i.e. PingFederate, PingDirectory |
PING_PRODUCT_VALIDATION |
true |
Validation toggle for PING_PRODUCT: true to require a valid Ping product type (e.g. PingFederate,PingDirectory), false to disable the check |
IMAGE_VERSION |
${IMAGE_VERSION} |
|
IMAGE_GIT_REV |
${IMAGE_GIT_REV} |
|
DATE |
${DATE} |
|
PING_PRODUCT_VERSION |
${VERSION} |
|
PS1 |
\${PING_PRODUCT}:\h:\w\n> |
Default shell prompt (i.e. productName:hostname:workingDir) |
PATH |
${JAVA_HOME}/bin:${BASE}:${SERVER_ROOT_DIR}/bin:${PATH} |
PATH used by the container |
Docker Container Hook Scripts
Please go here for details on all pingtoolkit hook scripts
This document is auto-generated from pingtoolkit/Dockerfile
Copyright © 2026 Ping Identity Corporation