Image “dataverse-k8s”¶
This container image enables you to run Dataverse, a Java EE based web application for research data management, on a container platform.
It is primarily targeted to be used in production on Kubernetes, but if you follow the same conventions, you should be able to use it with other tools like Docker or podman.
Supported tags¶
latest
: release branch based build (Dockerfile
)payara
: release branch based build, payara flavor (Dockerfile
)build-cache
: a maven cache image to speedup dev builds, refreshed every night based on latest upstreamdevelop
. (Dockerfile
,Jenkinsfile
)4.20
, …,4.15.1
, …,4.11
: stable (tagged) releasesUsing upstream release schema down to
4.11
.See also list on Docker Hub for releases
Last stable tag (
Dockerfile
)
4.20-payara
, …,4.20-payara
: same as above, but using Payara 5 as appserver.
Quick reference¶
Below you will find some documentation about the image itself. To fully understand how to use it, you should go to the Dataverse Cloud & Container Guide. (This file is part of it.)
Important Directories¶
This image possesses a user dataverse
with uid=1000
. The application server
is running as dataverse
, not root
. Please remember to grant write permission
to this user on any volumes (except secrets) used for the below directories.
/secrets
Mount secrets tree here. Also available as$SECRETS_DIR
./data
Mount a volume to save uploaded research data here. Used for temporary file storage only when using a remote storage like S3. You might need to replicate this data or place on a shared filestorage in multi-instance installations. Also available as$DATA_DIR
./metadata
Mount a volume here or use an init/sidecar container to deploy your custom metadata blocks in TSV format. Also available as$METADATA_DIR
. Upstream metadata blocks are stored at/opt/dataverse/dvinstall/data/metadatablocks
./docroot
Mount a volume here to store i18n language bundle files, sitemaps, images for Dataverses, logos, custom themes and stylesheets, etc here. You might need to replicate this data or place on a shared filestorage in multi-instance installations. Also available as$DOCROOT_DIR
./opt/dataverse/…
Installation root of application server, WAR files, scripts etc. SeeDockerfile
for all details./dumps
Mount a volume here to access Java Heap dumps when running out of heap memory. Also available as$DUMPS_DIR
.
Secrets and Credentials¶
Currently understood secrets in the container, mounted at $SECRETS_DIR
(see
above) as a tree of directories and files:
rserve/password
- optional, only needed when using a RServe server.doi/password
- needed when you use DOIs for PIDs.db/password
- required - guess why?api/key
- required because you want the unblock-key for anything serious.s3/access-key
ands3/secret-key
- needed when you want to use S3 storage. See docs on using S3.admin/password
- optional, provision a password for thedataverseAdmin
account. Defaults toadmin
.api/userskey
- optional, provision aBuiltinUsers.KEY
, which is necessary to create builtin users via API. Defaults to not available.providers/...
- optional, providing access credentials to integrate authentication providers.
A password alias is automatically created and used for those that are set via JVM options, no need to provide them yourself.
During container startup, environment variables are used inside entrypoint scripts for the non-secret parts of credentials. See default.config for a list.
More about secrets can be found in the guide.
Update policy¶
Please be aware that future enhancements to scripting and more used to deploy and configure Dataverse will not be added to old releases (“fix forward”).
Nonetheless, only the latest
and current stable image tag will receive any (security)
updates released for underlying images. This happens as a scheduled build each
night, pushing to Docker Hub. Please take care of updating, depending on your deployment.
You should be encouraged to update to the latest release ASAP. If you need to stay with a certain version, please feel free to open an issue.
Support Disclaimer¶
This image is maintained and supported by the Dataverse community. IQSS, Harvard, Cambridge is not providing support for it. Please find details how to contact the maintainers in the Dataverse Cloud & Container Guide.