Skip to main content
Planview Customer Success Center

Where is the context stored for Hub and Keycloak? How can I setup a “persistent volume claim” so that I don’t lose that context when either the Keycloak container or Hub container are restarted?

Last Updated:   |  Applicable Hub Versions: All

Answer

Volumes are defined by Docker, and not by Hub. The Dockerfiles define the appropriate volumes that can be mounted. For any questions, please consult the documentation for your specific deployment environment (i.e., Docker swarm, Kubernetes, etc).

As an example, the following is part of Hub's distributed Keycloak Dockerfile:

# volume for log files, backups unnecessary unless desired
VOLUME /tasktop/keycloak/standalone/log

# volume for application data, should have appropriate backup strategy
VOLUME /tasktop/keycloak/standalone/data

When deploying this image, users can specify mount points for these volumes to externalize the contents of these directories. Then, Keycloak’s database and logs will persist container redeployments.

Similarly, the following four volumes are specified for the Hub image:

# volume for log files, backups unnecessary unless desired
VOLUME /tasktop/logs

# volume for application data and external database configuration,
# should have appropriate backup strategy
VOLUME /tasktop/db

# for JDBC drivers when configured to connect to an external database
VOLUME /tasktop/drivers

# volume for libraries provided as connector dependencies, should have
# appropriate backup strategy
VOLUME /tasktop/libraries