Default user
Minimus aligns the security context so that container runs by default with a UID that allows file permissions, volumes, and security policies to work together. There are several scenarios:- Non-root images:
- If the public image runs as non-root, the Minimus image will match the user for compatibility reasons. For example, Velero runs as user 1002, ClickHouse-Operator runs as user 65534, Argo CD runs as user 999.
- If the public image runs as root but can also run as non-root, Minimus will set the default user to 65532 or 1000. For example:
- nginx, Node, Kibana run as user 1000 by default.
- Keda and AWS-Load-Balancer-Controller run as user 65532 by default.
- Root requirement:
- If the image must run as root to support required functions, the Minimus image will default to root as expected. For example, Go, Perl, aws-for-fluent-bit run as root.
- Helm chart requirement:
-
If the image is designed to run with a Bitnami Helm chart, the image will run as user 1001 by default. Minimus Advanced images are designed to be deployed with Bitnami charts and therefore usually run as user 1001. Learn more
Below is the typical securityContext for Bitnami compatibility:
-
If the image is designed to run with a Bitnami Helm chart, the image will run as user 1001 by default. Minimus Advanced images are designed to be deployed with Bitnami charts and therefore usually run as user 1001. Learn more
Below is the typical securityContext for Bitnami compatibility:
The Minimus default user policy recently changed. Therefore, some Minimus images may have a default user that does not align with the above stated policy. Please contact support for any questions or requests.
Look up the default user
The specification tab in the image version card always lists the default user set by Minimus. If the default user changed between versions, the changelog will show a configuration change (example in the Minimus console).Entrypoint and default CMD
Minimus images try to match the entrypoint of the public image whenever possible. However, this is not always possible. For example, if the public image uses an entrypoint script but the Minimus image does not include a shell, the entrypoint and default CMD will be different. For example, the Minimus images for OpenJDK, OpenJRE and Fluentd use an EXEC-form entrypoint instead of an entrypoint script. Learn moreLook up the entrypoint and default command
The specification tab in the image version card always lists the default entrypoint and default command set by Minimus. If the entrypoint or default command change between versions, the changelog will show a configuration change.Default working directory
Minimus aims to match the default working directory of the public image, unless there is a reason to diverge. Since Minimus images run as non-root in most cases, the working directory is often different from the public image to ensure it is writable by the default container user. Another reason why the working directory might differ is that Minimus images are optimized for mutli-stage build workflows. Unlike many public images which include enough tooling to support building and running the application in the same image, Minimus images embrace the distroless approach. Consequently, many Minimus images are optimized for the build stage by setting the working directory tohome/build. The Minimus images for OpenJDK and OpenJRE are good examples.