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
Last Updated: | Applicable Hub Versions: All
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