Override Execution User for Deployment Flexibility

Depending on security policies or platform constraints, it may be necessary to run XDM containers with a different execution user. This page describes where to override the runtime user in Docker Compose and Kubernetes (values.yaml).

For more detailed information on how to set up a non-root user environment, you can refer to the official documentation for both Docker and Kubernetes.

  • Kubernetes

  • Docker

For Kubernetes deployments, configure user and group settings using securityContext in values.yaml.

The security context fields are documented here: Security context.

Example:

core:
  securityContext:
    runAsUser: 0
    runAsGroup: 0
    fsGroup: 0

The same pattern can be applied to other services where supported by the chart.

In Docker Compose based installations, by default the XDM containers are running with a non-root user. If you need to change the execution user for any reason, you can add the user attribute to the services in the docker-compose.yml.

Example:

To change the user to root, add this user attribute. Here is how it would look like for the core-server service:

core-server:
  user: "0:0"
Make sure, that the host permissions for the volume mounts are compatible with the selected UID/GID.