Skip to content
Snippets Groups Projects
Verified Commit c67a4a91 authored by Maarten de Waard's avatar Maarten de Waard :angel:
Browse files

Merge branch 'master' into 22-increase-onlyoffice-maximum-upload-size

parents a81f3d04 7cf53de1
No related branches found
No related tags found
1 merge request!19Resolve "Increase ONLYOFFICE maximum upload size"
Showing
with 255 additions and 312 deletions
File moved
......@@ -2,4 +2,4 @@ apiVersion: v1
description: |
A helm chart for installing NextCloud and setting up ONLYOFFICE integration
name: nextcloud-onlyoffice
version: 0.1.4
version: 0.2.0
README.md 0 → 100644
# What is this?
Installs Nextcloud and ONLYOFFICE and configures Nextcloud to use ONLYOFFICE as
its document editor. Depends on the
[Nextcloud](https://github.com/helm/charts/tree/master/stable/nextcloud)
`@stable` chart. For configuration details on Nextcloud, refer to their
documentation.
Parts of this chart are based on a copy of the [COLLABORA code helm
chart](https://github.com/helm/charts/tree/master/stable/collabora-code)
## Apps
The Nextcloud app store allows admin users to install applications, many of
which have not undergone security testing. For that reason we disabled
downloading new apps via the app store. As the person installing Nextcloud it is
possible to specify which applications from the app store are available for
installation. It is also possible to enable them by default. Apps that are not
enabled by default can be enabled through the Apps screen in Nextcloud.
To install apps, edit the values.yaml file:
```yaml
apps:
- name: sociallogin # Installs sociallogin app
enabled: false # Disables sociallogin by default
```
## Installation
**NOTE:** The `onlyoffice.server_name` variable needs to be
overwritten with an URL that points to your onlyoffice for this to work
correctly. See `values-local.yaml.example` for an example of domain
configurations you might want to do. These instructions assume you copy
`values-local.yaml.example` to `values-local.yaml` and edit it.
**NOTE:** It is very important that you overwrite the following password and
secrets variables manually when you run helm install:
- `nextcloud.nextcloud.password`
- `nextcloud.mariadb.db.password`
- `nextcloud.mariadb.rootUser.password`
- `onlyoffice.jwtSecret`
- `postgresql.postgresqlPassword`
- `rabbitmq.rabbitmq.password`
Install with:
```
helm install . --wait -f values-local.yaml
```
**The `--wait` is important!** We need that because of how [helm chart
hooks](https://helm.sh/docs/charts_hooks/#hooks-and-the-release-lifecycle) work:
> Note that if the --wait flag is set, Tiller will wait until all resources are
> in a ready state and will not run the post-install hook until they are ready.
The job in this chart needs the Nextcloud pod to be in a ready state before
being executed.
## Values
The included `values.yaml` file configures Nextcloud to use a Mariadb database,
otherwise the Job cannot access the database for plugin installation.
It also configures NextCloud to use a persistent volume, because this is
necessary for the integration job to work. Be sure to change the size of the
persistent disk (default: 2 GB) if you need more.
| Parameter | Description | Default |
| ------------------------------------------------------------ | --------------------------------------------------------------------------------------- | ---------------------------------------- |
| `nextcloud.*` | See [NextCloud helm chart](https://github.com/helm/charts/tree/master/stable/nextcloud) | |
| `onlyoffice.replicaCount` | Number of provisioner instances to deployed | `1` |
| `onlyoffice.strategy` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `onlyoffice.jwtSecret` | Used to set the JWT shared secret between ONLYOFFICE and NC | `secret` |
| `onlyoffice.image.repository` | Provisioner image | `onlyoffice/documentserver` |
| `onlyoffice.image.tag` | Version of provisioner image | `5.3.1.26` |
| `onlyoffice.image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `onlyoffice.server_name` | Onlyoffice server URL | `onlyoffice.domain` |
| `onlyoffice.ingress.enabled` | | `false` |
| `onlyoffice.ingress.annotations` | | `{}` |
| `onlyoffice.ingress.paths` | | `[]` |
| `onlyoffice.ingress.hosts` | | `[]` |
| `onlyoffice.ingress.tls` | | `[]` |
| `onlyoffice.livenessProbe.enabled` | Turn on and off liveness probe | `true` |
| `onlyoffice.livenessProbe.initialDelaySeconds` | Delay before liveness probe is initiated | `30` |
| `onlyoffice.livenessProbe.periodSeconds` | How often to perform the probe | `10` |
| `onlyoffice.livenessProbe.timeoutSeconds` | When the probe times out | `2` |
| `onlyoffice.livenessProbe.successThreshold` | Minimum consecutive successes for the probe | `1` |
| `onlyoffice.livenessProbe.failureThreshold` | Minimum consecutive failures for the probe | `3` |
| `onlyoffice.readinessProbe.enabled` | Turn on and off readiness probe | `true` |
| `onlyoffice.readinessProbe.initialDelaySeconds` | Delay before readiness probe is initiated | `30` |
| `onlyoffice.readinessProbe.periodSeconds` | How often to perform the probe | `10` |
| `onlyoffice.readinessProbe.timeoutSeconds` | When the probe times out | `2` |
| `onlyoffice.readinessProbe.successThreshold` | Minimum consecutive successes for the probe | `1` |
| `onlyoffice.readinessProbe.failureThreshold` | Minimum consecutive failures for the probe | `3` |
| `onlyoffice.securityContext` | Change pod security contenxt | `{}` |
| `onlyoffice.resources` | Resources required (e.g. CPU, memory) | `{}` |
| `onlyoffice.nodeSelector` | Node labels for pod assignment | `{}` |
| `onlyoffice.affinity` | Affinity settings | `{}` |
| `onlyoffice.tolerations` | List of node taints to tolerate | `[]` |
# What is this?
Installs Nextcloud and ONLYOFFICE and configures Nextcloud to use ONLYOFFICE as
its document editor. Depends on the
[Nextcloud](https://github.com/helm/charts/tree/master/stable/nextcloud)
`@stable` chart and [our ONLYOFFICE DocumentServer
chart](https://open.greenhost.net/openappstack/nextcloud/tree/master/onlyoffice-documentserver).
For configuration details on those charts, refer to their documentation.
## Apps
The Nextcloud app store allows admin users to install applications, many of
which have not undergone security testing. For that reason we disabled
downloading new apps via the app store. As the person installing Nextcloud it is
possible to specify which applications from the app store are available for
installation. It is also possible to enable them by default. Apps that are not
enabled by default can be enabled through the Apps screen in Nextcloud.
To install apps, edit the values.yaml file:
```yaml
apps:
- name: sociallogin # Installs sociallogin app
enabled: false # Disables sociallogin by default
```
## Installation
Make sure you have a `onlyoffice-documentserver` helm repo before running helm
dep update for this chart. You can add it with:
```
helm repo add onlyoffice-documentserver git+https://open.greenhost.net/openappstack/nextcloud@onlyoffice-documentserver?ref=master
```
The `onlyoffice-documentserver.onlyoffice.server_name` variable needs to be
overwritten with an URL that points to your onlyoffice for this to work
correctly. See `values-local.yaml.example` for an example of domain
configurations you might want to do. These instructions assume you copy
`values-local.yaml.example` to `values-local.yaml` and edit it.
Install with:
```
helm install . --wait -f values-local.yaml
```
**The `--wait` is important!** We need that because of how [helm chart
hooks](https://helm.sh/docs/charts_hooks/#hooks-and-the-release-lifecycle) work:
> Note that if the --wait flag is set, Tiller will wait until all resources are
> in a ready state and will not run the post-install hook until they are ready.
The job in this chart needs the Nextcloud pod to be in a ready state before
being executed.
## Values
The included `values.yaml` file configures Nextcloud to use a Mariadb database,
otherwise the Job can not access the database for plugin installation.
It also configures NextCloud to use a persistent volume, because this is
necessary for the integration job to work. Be sure to change the default size of
the persistent disk from 2 GB if you need more.
dependencies:
- name: nextcloud
version: 1.7.2
repository: "@stable"
tags:
- nextcloud
- name: onlyoffice-documentserver
version: 0.1.3
repository: "@onlyoffice-documentserver"
tags:
- onlyoffice
- nextcloud
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "nextcloud-onlyoffice.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{/*
Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "nextcloud-onlyoffice.fullname" -}}
{{- if .Values.fullnameOverride -}}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- $name := default .Chart.Name .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}
{{- end -}}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "nextcloud-onlyoffice.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}
apiVersion: v1
appVersion: 5.4.0-2-1
description: A Helm chart for onlyoffice's documentserver
home: https://www.onlyoffice.com/
icon: https://download.onlyoffice.com/assets/fb/fb_icon_325x325.jpg
maintainers:
- email: maarten@greenhost.nl
name: Maarten
name: onlyoffice-documentserver
sources:
- https://code.greenhost.net/openappstack/nextcloud
version: 0.1.3
# ONLYOFFICE
Simple helm chart for running onlyoffice's documentserver container.
Chart based on a copy of the [COLLABORA code helm
chart](https://github.com/helm/charts/tree/master/stable/collabora-code)
Parameters:
**NOTE:** The `onlyoffice.server_name` variable needs to be overwritten with an
URL that points to your onlyoffice for this to work correctly.
**NOTE:** It is very important that you overwrite the following password and
secrets variables manually when you run helm install:
- `jwtSecret`
- `postgresql.postgresqlPassword`
- `rabbitmq.rabbitmq.password`
| Parameter | Description | Default |
| ------------------------------------------------- | ------------------------------------------------------------- | ----------------------------------------------------------- |
| `replicaCount` | Number of provisioner instances to deployed | `1` |
| `strategy` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
| `jwtSecret` | Used to set the JWT shared secret between ONLYOFFICE and NC | `secret` |
| `image.repository` | Provisioner image | `onlyoffice/documentserver` |
| `image.tag` | Version of provisioner image | `5.3.1.26` |
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `onlyoffice.server_name` | Onlyoffice server URL | `onlyoffice.domain` |
| `ingress.enabled` | | `false` |
| `ingress.annotations` | | `{}` |
| `ingress.paths` | | `[]` |
| `ingress.hosts` | | `[]` |
| `ingress.tls` | | `[]` |
| `livenessProbe.enabled` | Turn on and off liveness probe | `true` |
| `livenessProbe.initialDelaySeconds` | Delay before liveness probe is initiated | `30` |
| `livenessProbe.periodSeconds` | How often to perform the probe | `10` |
| `livenessProbe.timeoutSeconds` | When the probe times out | `2` |
| `livenessProbe.successThreshold` | Minimum consecutive successes for the probe | `1` |
| `livenessProbe.failureThreshold` | Minimum consecutive failures for the probe | `3` |
| `readinessProbe.enabled` | Turn on and off readiness probe | `true` |
| `readinessProbe.initialDelaySeconds` | Delay before readiness probe is initiated | `30` |
| `readinessProbe.periodSeconds` | How often to perform the probe | `10` |
| `readinessProbe.timeoutSeconds` | When the probe times out | `2` |
| `readinessProbe.successThreshold` | Minimum consecutive successes for the probe | `1` |
| `readinessProbe.failureThreshold` | Minimum consecutive failures for the probe | `3` |
| `securityContext` | Change pod security contenxt | `{}` |
| `resources` | Resources required (e.g. CPU, memory) | `{}` |
| `nodeSelector` | Node labels for pod assignment | `{}` |
| `affinity` | Affinity settings | `{}` |
| `tolerations` | List of node taints to tolerate | `[]` |
1. Get the application URL by running these commands:
{{- if .Values.ingress.enabled }}
{{- range $host := .Values.ingress.hosts }}
{{- range $.Values.ingress.paths }}
http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host }}{{ . }}
{{- end }}
{{- end }}
{{- else if contains "NodePort" .Values.service.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "onlyoffice-documentserver.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.service.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get svc -w {{ include "onlyoffice-documentserver.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "onlyoffice-documentserver.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo http://$SERVICE_IP:{{ .Values.service.port }}
{{- else if contains "ClusterIP" .Values.service.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "onlyoffice-documentserver.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:9980 to use your application"
kubectl port-forward $POD_NAME 9980:9980
{{- end }}
# Default values for onlyoffice.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
replicaCount: 1
jwtSecret: "secret"
image:
repository: infrarednetwork/onlyoffice-documentserver
tag: 5.4.0-2-1
pullPolicy: Always
strategy: Recreate
nameOverride: ""
fullnameOverride: ""
service:
type: ClusterIP
port: 9980
ingress:
enabled: false
annotations:
nginx.ingress.kubernetes.io/proxy-body-size: 20M
paths: []
hosts: []
tls: []
onlyoffice:
# port that server onlyoffice in container
containerPort: 8000
# URL to the server running onlyoffice, replace this with your own domain!
server_name: onlyoffice.domain
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
securityContext: {}
affinity: {}
livenessProbe:
enabled: true
initialDelaySeconds: 120
timeoutSeconds: 2
periodSeconds: 10
successThreshold: 1
failureThreshold: 3
readinessProbe:
enabled: true
initialDelaySeconds: 30
timeoutSeconds: 2
periodSeconds: 20
successThreshold: 1
failureThreshold: 20
redis:
master:
command: "redis-server --appendonly yes"
usePassword: false
cluster:
enabled: false
postgresql:
persistence:
# persistent storage is handled by NextCloud in our case
enabled: false
postgresqlDatabase: onlyoffice
postgresqlUsername: onlyoffice
postgresqlPassword: onlyoffice
rabbitmq:
rabbitmq:
password: password
dependencies:
- name: nextcloud
version: 1.7.2
repository: "@stable"
tags:
- nextcloud
- name: rabbitmq
version: 6.1.2
repository: "@stable"
......
......@@ -28,3 +28,25 @@ To learn more, try:
echo User: {{ .Values.nextcloud.nextcloud.username }}
echo Password: $(kubectl get secret --namespace {{ .Release.Namespace }} {{ $nextcloudname }} -o jsonpath="{.data.nextcloud-password}" | base64 --decode)
3. Get the ONLYOFFICE URL by running these commands:
{{- if .Values.onlyoffice.ingress.enabled }}
{{- range $host := .Values.onlyoffice.ingress.hosts }}
{{- range $.Values.onlyoffice.ingress.paths }}
http{{ if $.Values.onlyoffice.ingress.tls }}s{{ end }}://{{ $host }}{{ . }}
{{- end }}
{{- end }}
{{- else if contains "NodePort" .Values.onlyoffice.service.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "onlyoffice-documentserver.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.onlyoffice.service.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get svc -w {{ include "onlyoffice-documentserver.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "onlyoffice-documentserver.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo http://$SERVICE_IP:{{ .Values.service.port }}
{{- else if contains "ClusterIP" .Values.onlyoffice.service.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "onlyoffice-documentserver.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:9980 to use your application"
kubectl port-forward $POD_NAME 9980:9980
{{- end }}
......@@ -2,8 +2,8 @@
{{/*
Expand the name of the chart.
*/}}
{{- define "onlyoffice-documentserver.name" -}}
{{- default "onlyoffice-documentserver" .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
{{- define "nextcloud-onlyoffice.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{/*
......@@ -11,12 +11,41 @@ Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "onlyoffice-documentserver.fullname" -}}
{{- define "nextcloud-onlyoffice.fullname" -}}
{{- if .Values.fullnameOverride -}}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- $name := default .Chart.Name .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}
{{- end -}}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "nextcloud-onlyoffice.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- define "onlyoffice-documentserver.name" -}}
{{- default "onlyoffice-documentserver" .Values.onlyoffice.nameOverride | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{/*
Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "onlyoffice-documentserver.fullname" -}}
{{- if .Values.onlyoffice.fullnameOverride -}}
{{- .Values.onlyoffice.fullnameOverride | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{/* Instead of what most charts do, we don't use .Chart.Name here, because that can break the use of this template function in parent charts. */}}
{{- $name := default "onlyoffice-documentserver" .Values.nameOverride -}}
{{- $name := default "onlyoffice-documentserver" .Values.onlyoffice.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
......
{{- $onlyoffice := index .Values "onlyoffice-documentserver" }}
apiVersion: v1
kind: ConfigMap
metadata:
......@@ -13,13 +12,13 @@ data:
"apps": {
"onlyoffice": {
"DocumentServerInternalUrl": "",
"DocumentServerUrl": "https:\/\/{{ $onlyoffice.onlyoffice.server_name }}\/",
"DocumentServerUrl": "https:\/\/{{ .Values.onlyoffice.server_name }}\/",
"StorageUrl": "https:\/\/{{ .Values.nextcloud.nextcloud.host }}\/",
"defFormats": "{\"csv\":\"false\",\"doc\":\"false\",\"docm\":\"false\",\"docx\":\"true\",\"dotx\":\"false\",\"epub\":\"false\",\"html\":\"false\",\"odp\":\"true\",\"ods\":\"true\",\"odt\":\"true\",\"pdf\":\"false\",\"potm\":\"false\",\"potx\":\"false\",\"ppsm\":\"false\",\"ppsx\":\"false\",\"ppt\":\"false\",\"pptm\":\"false\",\"pptx\":\"true\",\"rtf\":\"false\",\"txt\":\"false\",\"xls\":\"false\",\"xlsm\":\"false\",\"xlsx\":\"true\",\"xltm\":\"false\",\"xltx\":\"false\"}",
"editFormats": "{\"csv\":\"true\",\"odp\":\"true\",\"ods\":\"true\",\"odt\":\"true\",\"rtf\":\"false\",\"txt\":\"true\"}",
"enabled": "yes",
"groups": "[]",
"jwt_secret": "{{ $onlyoffice.jwtSecret }}",
"jwt_secret": "{{ .Values.onlyoffice.jwtSecret }}",
"sameTab": "false",
"settings_error": "",
"types": "filesystem"
......
......@@ -8,9 +8,9 @@ metadata:
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
spec:
replicas: {{ .Values.replicaCount }}
replicas: {{ .Values.onlyoffice.replicaCount }}
strategy:
type: {{ .Values.strategy }}
type: {{ .Values.onlyoffice.strategy }}
selector:
matchLabels:
app.kubernetes.io/name: {{ include "onlyoffice-documentserver.name" . }}
......@@ -23,39 +23,39 @@ spec:
spec:
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
{{- if .Values.livenessProbe.enabled }}
image: "{{ .Values.onlyoffice.image.repository }}:{{ .Values.onlyoffice.image.tag }}"
imagePullPolicy: {{ .Values.onlyoffice.image.pullPolicy }}
{{- if .Values.onlyoffice.livenessProbe.enabled }}
livenessProbe:
failureThreshold: 3
httpGet:
path: /welcome
port: http
scheme: HTTP
initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }}
periodSeconds: {{ .Values.livenessProbe.periodSeconds }}
timeoutSeconds: {{ .Values.livenessProbe.timeoutSeconds }}
successThreshold: {{ .Values.livenessProbe.successThreshold }}
failureThreshold: {{ .Values.livenessProbe.failureThreshold }}
initialDelaySeconds: {{ .Values.onlyoffice.livenessProbe.initialDelaySeconds }}
periodSeconds: {{ .Values.onlyoffice.livenessProbe.periodSeconds }}
timeoutSeconds: {{ .Values.onlyoffice.livenessProbe.timeoutSeconds }}
successThreshold: {{ .Values.onlyoffice.livenessProbe.successThreshold }}
failureThreshold: {{ .Values.onlyoffice.livenessProbe.failureThreshold }}
{{- end }}
{{- if .Values.readinessProbe.enabled }}
{{- if .Values.onlyoffice.readinessProbe.enabled }}
readinessProbe:
failureThreshold: 3
httpGet:
path: /welcome
port: http
scheme: HTTP
initialDelaySeconds: {{ .Values.readinessProbe.initialDelaySeconds }}
periodSeconds: {{ .Values.readinessProbe.periodSeconds }}
timeoutSeconds: {{ .Values.readinessProbe.timeoutSeconds }}
successThreshold: {{ .Values.readinessProbe.successThreshold }}
failureThreshold: {{ .Values.readinessProbe.failureThreshold }}
initialDelaySeconds: {{ .Values.onlyoffice.readinessProbe.initialDelaySeconds }}
periodSeconds: {{ .Values.onlyoffice.readinessProbe.periodSeconds }}
timeoutSeconds: {{ .Values.onlyoffice.readinessProbe.timeoutSeconds }}
successThreshold: {{ .Values.onlyoffice.readinessProbe.successThreshold }}
failureThreshold: {{ .Values.onlyoffice.readinessProbe.failureThreshold }}
{{- end }}
env:
- name: RABBITMQ_SERVER_URL
value: "amqp://user:{{ .Values.rabbitmq.rabbitmq.password }}@{{ .Release.Name }}-rabbitmq"
- name: JWT_SECRET
value: "{{ .Values.jwtSecret }}"
value: "{{ .Values.onlyoffice.jwtSecret }}"
- name: POSTGRESQL_SERVER_USER
value: "onlyoffice"
- name: REDIS_SERVER_HOST
......@@ -78,18 +78,18 @@ spec:
containerPort: {{ .Values.onlyoffice.containerPort }}
protocol: TCP
resources:
{{- toYaml .Values.resources | nindent 12 }}
{{- toYaml .Values.onlyoffice.resources | nindent 12 }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
{{- with .Values.nodeSelector }}
{{- toYaml .Values.onlyoffice.securityContext | nindent 12 }}
{{- with .Values.onlyoffice.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
{{- with .Values.onlyoffice.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
{{- with .Values.onlyoffice.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- if .Values.ingress.enabled -}}
{{- if .Values.onlyoffice.ingress.enabled -}}
{{- $fullName := include "onlyoffice-documentserver.fullname" . -}}
{{- $ingressPaths := .Values.ingress.paths -}}
{{- $ingressPaths := .Values.onlyoffice.ingress.paths -}}
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
......@@ -10,14 +10,14 @@ metadata:
helm.sh/chart: {{ include "onlyoffice-documentserver.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- with .Values.ingress.annotations }}
{{- with .Values.onlyoffice.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- if .Values.ingress.tls }}
{{- if .Values.onlyoffice.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
{{- range .Values.onlyoffice.ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
......@@ -26,7 +26,7 @@ spec:
{{- end }}
{{- end }}
rules:
{{- range .Values.ingress.hosts }}
{{- range .Values.onlyoffice.ingress.hosts }}
- host: {{ . | quote }}
http:
paths:
......
......@@ -8,9 +8,9 @@ metadata:
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
spec:
type: {{ .Values.service.type }}
type: {{ .Values.onlyoffice.service.type }}
ports:
- port: {{ .Values.service.port }}
- port: {{ .Values.onlyoffice.service.port }}
targetPort: http
protocol: TCP
name: http
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment