mirror of
https://github.com/bitnami/charts.git
synced 2026-08-10 14:15:55 +08:00
[bitnami/jasperreports] MAJOR: Move to non-root (#7022)
* [bitnami/jasperreports] MAJOR: Move to non-root * Fix username * Readme * seconds * Apply requested change * [bitnami/jasperreports] Update components versions Signed-off-by: Bitnami Containers <containers@bitnami.com> * Merge * [bitnami/jasperreports] Update components versions Signed-off-by: Bitnami Containers <containers@bitnami.com> Co-authored-by: Bitnami Containers <containers@bitnami.com>
This commit is contained in:
co-authored by
Bitnami Containers
parent
281fc8a1e8
commit
f3b1d83fa2
@@ -1,9 +1,9 @@
|
||||
dependencies:
|
||||
- name: mariadb
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 9.3.17
|
||||
version: 9.4.0
|
||||
- name: common
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 1.7.0
|
||||
digest: sha256:41375ee3440e851602f6d3ae23d21e61e31ca341552845c1ba3f3356d8a7e05a
|
||||
generated: "2021-07-24T16:14:46.273332289Z"
|
||||
digest: sha256:2fe1aa59a3285feec8055506f285d4c506b768df9873f6446efcb6f53d378557
|
||||
generated: "2021-07-28T13:37:10.470635797Z"
|
||||
|
||||
@@ -30,4 +30,4 @@ name: jasperreports
|
||||
sources:
|
||||
- https://github.com/bitnami/bitnami-docker-jasperreports
|
||||
- http://community.jaspersoft.com/project/jasperreports-server
|
||||
version: 10.2.12
|
||||
version: 11.0.0
|
||||
|
||||
@@ -76,13 +76,13 @@ The command removes all the Kubernetes components associated with the chart and
|
||||
| ----------------------- | ---------------------------------------------------------------------- | ----------------------- |
|
||||
| `image.registry` | JasperReports image registry | `docker.io` |
|
||||
| `image.repository` | JasperReports image repository | `bitnami/jasperreports` |
|
||||
| `image.tag` | JasperReports image tag (immutable tags are recommended) | `7.8.0-debian-10-r276` |
|
||||
| `image.tag` | JasperReports image tag (immutable tags are recommended) | `7.8.0-debian-10-r280` |
|
||||
| `image.pullPolicy` | JasperReports image pull policy | `IfNotPresent` |
|
||||
| `image.pullSecrets` | Specify docker-registry secret names as an array | `[]` |
|
||||
| `jasperreportsUsername` | JasperReports user | `user` |
|
||||
| `jasperreportsUsername` | JasperReports user | `jasperadmin` |
|
||||
| `jasperreportsPassword` | JasperReports password | `""` |
|
||||
| `jasperreportsEmail` | JasperReports user email | `user@example.com` |
|
||||
| `allowEmptyPassword` | Set to `yes` to allow the container to be started with blank passwords | `yes` |
|
||||
| `allowEmptyPassword` | Set to `yes` to allow the container to be started with blank passwords | `no` |
|
||||
| `smtpHost` | SMTP host | `""` |
|
||||
| `smtpPort` | SMTP port | `""` |
|
||||
| `smtpEmail` | SMTP email | `""` |
|
||||
@@ -104,22 +104,20 @@ The command removes all the Kubernetes components associated with the chart and
|
||||
| `hostAliases` | Add deployment host aliases | `[]` |
|
||||
| `containerPort` | HTTP port to expose at container level | `8080` |
|
||||
| `podSecurityContext.enabled` | Enable pod's Security Context | `true` |
|
||||
| `podSecurityContext.fsGroup` | Set pod's Security Context fsGroup | `0` |
|
||||
| `podSecurityContext.fsGroup` | Set pod's Security Context fsGroup | `1001` |
|
||||
| `containerSecurityContext.enabled` | Enable container's Security Context | `true` |
|
||||
| `containerSecurityContext.runAsUser` | Set container's Security Context runAsUser | `0` |
|
||||
| `containerSecurityContext.runAsUser` | Set container's Security Context runAsUser | `1001` |
|
||||
| `resources.limits` | The resources limits for the Jasperreports container | `{}` |
|
||||
| `resources.requests` | The requested resources for the Jasperreports container | `{}` |
|
||||
| `livenessProbe.enabled` | Enable livenessProbe | `true` |
|
||||
| `livenessProbe.httpGet.path` | Request path for livenessProbe | `/jasperserver/login.html` |
|
||||
| `livenessProbe.httpGet.port` | Port for livenessProbe | `http` |
|
||||
| `livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `300` |
|
||||
| `livenessProbe.path` | Request path for livenessProbe | `/jasperserver/login.html` |
|
||||
| `livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `450` |
|
||||
| `livenessProbe.periodSeconds` | Period seconds for livenessProbe | `10` |
|
||||
| `livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `5` |
|
||||
| `livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `6` |
|
||||
| `livenessProbe.successThreshold` | Success threshold for livenessProbe | `1` |
|
||||
| `readinessProbe.enabled` | Enable readinessProbe | `true` |
|
||||
| `readinessProbe.httpGet.path` | Request path for readinessProbe | `/jasperserver/login.html` |
|
||||
| `readinessProbe.httpGet.port` | Port for readinessProbe | `http` |
|
||||
| `readinessProbe.path` | Request path for readinessProbe | `/jasperserver/login.html` |
|
||||
| `readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `30` |
|
||||
| `readinessProbe.periodSeconds` | Period seconds for readinessProbe | `10` |
|
||||
| `readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `5` |
|
||||
@@ -284,6 +282,21 @@ Find more information about how to deal with common errors related to Bitnami’
|
||||
|
||||
## Upgrading
|
||||
|
||||
### To 11.0.0
|
||||
|
||||
The [Bitnami JasperReports](https://github.com/bitnami/bitnami-docker-jasperreports) image was migrated to a "non-root" user approach. Previously the container ran as the `root` user and the Tomcat daemon was started as the `tomcat` user. From now on, both the container and the Tomcat daemon run as user `1001`. You can revert this behavior by setting the parameters `containerSecurityContext.runAsUser` to `root`.
|
||||
|
||||
Consequences:
|
||||
|
||||
- The HTTP/HTTPS ports exposed by the container are now `8080/8443` instead of `80/443`.
|
||||
- Backwards compatibility is not guaranteed.
|
||||
|
||||
To upgrade to `11.0.0`, backup JasperReports data and the previous MariaDB databases, install a new JasperReports chart and import the backups and data, ensuring the `1001` user has the appropriate permissions on the migrated volume.
|
||||
|
||||
In addition to this, the image was refactored and now the source code is published in GitHub in the [`rootfs`](https://github.com/bitnami/bitnami-docker-jasperreports/tree/master/7/debian-10/rootfs) folder of the container image.
|
||||
|
||||
We also fixed a regression with readiness and liveness probes. Now the kind of probe cannot be configured under the *readinessProbe/livenessProbe* sections but in the *customReadinessProbe/customLivenessProbe* sections.
|
||||
|
||||
### To 10.0.0
|
||||
|
||||
- Chart labels were adapted to follow the [Helm charts standard labels](https://helm.sh/docs/chart_best_practices/labels/#standard-labels).
|
||||
|
||||
@@ -134,12 +134,28 @@ spec:
|
||||
- name: http
|
||||
containerPort: {{ .Values.containerPort }}
|
||||
{{- if .Values.livenessProbe.enabled }}
|
||||
livenessProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.livenessProbe "enabled") "context" $) | nindent 12 }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: {{ .Values.livenessProbe.path }}
|
||||
port: http
|
||||
initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.livenessProbe.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.livenessProbe.timeoutSeconds }}
|
||||
successThreshold: {{ .Values.livenessProbe.successThreshold }}
|
||||
failureThreshold: {{ .Values.livenessProbe.failureThreshold }}
|
||||
{{- else if .Values.customLivenessProbe }}
|
||||
livenessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.customLivenessProbe "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.readinessProbe.enabled }}
|
||||
readinessProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.readinessProbe "enabled") "context" $) | nindent 12 }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: {{ .Values.readinessProbe.path }}
|
||||
port: http
|
||||
initialDelaySeconds: {{ .Values.readinessProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.readinessProbe.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.readinessProbe.timeoutSeconds }}
|
||||
successThreshold: {{ .Values.readinessProbe.successThreshold }}
|
||||
failureThreshold: {{ .Values.readinessProbe.failureThreshold }}
|
||||
{{- else if .Values.customReadinessProbe }}
|
||||
readinessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.customReadinessProbe "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
## Global Docker image parameters
|
||||
## Please, note that this will override the image parameters, including dependencies, configured to use the global value
|
||||
## Current available global Docker image parameters: imageRegistry, imagePullSecrets and storageClass
|
||||
##
|
||||
|
||||
## @param global.imageRegistry Global Docker image registry
|
||||
## @param global.imagePullSecrets Global Docker registry secret names as an array
|
||||
@@ -17,6 +18,7 @@ global:
|
||||
storageClass: ""
|
||||
|
||||
## @section Common parameters
|
||||
##
|
||||
|
||||
## @param kubeVersion Force target Kubernetes version (using Helm capabilities if not set)
|
||||
##
|
||||
@@ -41,6 +43,7 @@ clusterDomain: cluster.local
|
||||
extraDeploy: []
|
||||
|
||||
## @section JasperReports parameters
|
||||
##
|
||||
|
||||
## Bitnami JasperReports image version
|
||||
## ref: https://hub.docker.com/r/bitnami/dokuwiki/tags/
|
||||
@@ -53,7 +56,7 @@ extraDeploy: []
|
||||
image:
|
||||
registry: docker.io
|
||||
repository: bitnami/jasperreports
|
||||
tag: 7.8.0-debian-10-r276
|
||||
tag: 7.8.0-debian-10-r281
|
||||
## Specify a imagePullPolicy
|
||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
||||
@@ -70,7 +73,7 @@ image:
|
||||
## @param jasperreportsUsername JasperReports user
|
||||
## ref: https://github.com/bitnami/bitnami-docker-jasperreports#configuration
|
||||
##
|
||||
jasperreportsUsername: user
|
||||
jasperreportsUsername: jasperadmin
|
||||
## @param jasperreportsPassword JasperReports password
|
||||
## Defaults to a random 10-character alphanumeric string if not set
|
||||
## ref: https://github.com/bitnami/bitnami-docker-jasperreports#configuration
|
||||
@@ -83,7 +86,7 @@ jasperreportsEmail: user@example.com
|
||||
## @param allowEmptyPassword Set to `yes` to allow the container to be started with blank passwords
|
||||
## ref: https://github.com/bitnami/bitnami-docker-jasperreports#environment-variables
|
||||
##
|
||||
allowEmptyPassword: "yes"
|
||||
allowEmptyPassword: "no"
|
||||
## SMTP mail delivery configuration
|
||||
## ref: https://github.com/bitnami/bitnami-docker-jasperreports#smtp-configuration
|
||||
## @param smtpHost SMTP host
|
||||
@@ -127,6 +130,7 @@ updateStrategy:
|
||||
type: RollingUpdate
|
||||
|
||||
## @section Jasperreports deployment parameters
|
||||
##
|
||||
|
||||
## @param hostAliases Add deployment host aliases
|
||||
## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
|
||||
@@ -142,7 +146,7 @@ containerPort: 8080
|
||||
##
|
||||
podSecurityContext:
|
||||
enabled: true
|
||||
fsGroup: 0
|
||||
fsGroup: 1001
|
||||
## JasperReports containers' SecurityContext
|
||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
|
||||
## @param containerSecurityContext.enabled Enable container's Security Context
|
||||
@@ -150,7 +154,7 @@ podSecurityContext:
|
||||
##
|
||||
containerSecurityContext:
|
||||
enabled: true
|
||||
runAsUser: 0
|
||||
runAsUser: 1001
|
||||
## JasperReports resource requests and limits
|
||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
||||
## We usually recommend not to specify default resources and to leave this as a conscious
|
||||
@@ -165,6 +169,7 @@ resources:
|
||||
## limits:
|
||||
## cpu: 200m
|
||||
## memory: 256Mi
|
||||
##
|
||||
limits: {}
|
||||
requests:
|
||||
memory: 512Mi
|
||||
@@ -172,8 +177,7 @@ resources:
|
||||
## JasperReports containers' liveness and readiness probes.
|
||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes
|
||||
## @param livenessProbe.enabled Enable livenessProbe
|
||||
## @param livenessProbe.httpGet.path Request path for livenessProbe
|
||||
## @param livenessProbe.httpGet.port Port for livenessProbe
|
||||
## @param livenessProbe.path Request path for livenessProbe
|
||||
## @param livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe
|
||||
## @param livenessProbe.periodSeconds Period seconds for livenessProbe
|
||||
## @param livenessProbe.timeoutSeconds Timeout seconds for livenessProbe
|
||||
@@ -182,10 +186,8 @@ resources:
|
||||
##
|
||||
livenessProbe:
|
||||
enabled: true
|
||||
httpGet:
|
||||
path: /jasperserver/login.html
|
||||
port: http
|
||||
initialDelaySeconds: 300
|
||||
path: /jasperserver/login.html
|
||||
initialDelaySeconds: 450
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 5
|
||||
failureThreshold: 6
|
||||
@@ -193,8 +195,7 @@ livenessProbe:
|
||||
## JasperReports containers' readiness probe
|
||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes
|
||||
## @param readinessProbe.enabled Enable readinessProbe
|
||||
## @param readinessProbe.httpGet.path Request path for readinessProbe
|
||||
## @param readinessProbe.httpGet.port Port for readinessProbe
|
||||
## @param readinessProbe.path Request path for readinessProbe
|
||||
## @param readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe
|
||||
## @param readinessProbe.periodSeconds Period seconds for readinessProbe
|
||||
## @param readinessProbe.timeoutSeconds Timeout seconds for readinessProbe
|
||||
@@ -203,9 +204,7 @@ livenessProbe:
|
||||
##
|
||||
readinessProbe:
|
||||
enabled: true
|
||||
httpGet:
|
||||
path: /jasperserver/login.html
|
||||
port: http
|
||||
path: /jasperserver/login.html
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 5
|
||||
@@ -325,6 +324,7 @@ persistence:
|
||||
existingClaim: ""
|
||||
|
||||
## @section Exposure parameters
|
||||
##
|
||||
|
||||
## Kubernetes configuration
|
||||
## For minikube, set this to NodePort, elsewhere use LoadBalancer
|
||||
@@ -426,6 +426,7 @@ ingress:
|
||||
secrets: []
|
||||
|
||||
## @section Database parameters
|
||||
##
|
||||
|
||||
## MariaDB chart configuration
|
||||
## https://github.com/bitnami/charts/blob/master/bitnami/mariadb/values.yaml
|
||||
@@ -490,6 +491,7 @@ mariadb:
|
||||
externalDatabase:
|
||||
## @param externalDatabase.existingSecret Name of the database existing Secret Object
|
||||
## NOTE: When it's set, the `externalDatabase.password` parameter is ignored
|
||||
##
|
||||
existingSecret: ""
|
||||
## @param externalDatabase.host Host of the existing database
|
||||
##
|
||||
|
||||
Reference in New Issue
Block a user