290 lines
10 KiB
YAML
290 lines
10 KiB
YAML
image:
|
||
registry: registry.loop.ru
|
||
repository: loop/server
|
||
tag: 2025-11-20-1
|
||
pullPolicy: IfNotPresent
|
||
# pullSecrets:
|
||
# - myRegistryKeySecretName
|
||
|
||
name: loop-server
|
||
|
||
appKind: Deployment
|
||
|
||
args: []
|
||
command: []
|
||
|
||
# nameOverride:
|
||
# fullnameOverride:
|
||
|
||
hostAliases: []
|
||
hostNetwork: false
|
||
|
||
serviceAccount:
|
||
create: false
|
||
annotations: {}
|
||
name:
|
||
|
||
commonLabels: {}
|
||
|
||
commonAnnotations: {}
|
||
|
||
podAnnotations: {}
|
||
|
||
podLabels: {}
|
||
|
||
initContainers: []
|
||
## e.g.
|
||
# - name: your-image-name
|
||
# image: your-image
|
||
# imagePullPolicy: Always
|
||
# ports:
|
||
# - name: portname
|
||
# containerPort: 1234
|
||
|
||
extraContainers: {}
|
||
## e.g.
|
||
# containerName:
|
||
# image: your-image
|
||
# imagePullPolicy: Always
|
||
# ports:
|
||
# - name: portname
|
||
# containerPort: 1234
|
||
|
||
priorityClassName: ''
|
||
|
||
dnsPolicy: ClusterFirst
|
||
|
||
podSecurityContext:
|
||
enabled: true
|
||
fsGroup: 2000
|
||
|
||
containerSecurityContext:
|
||
enabled: false
|
||
runAsUser: 1001
|
||
|
||
containerPorts:
|
||
- name: api
|
||
containerPort: 8065
|
||
protocol: TCP
|
||
- name: metrics
|
||
containerPort: 8067
|
||
protocol: TCP
|
||
- name: cluster
|
||
containerPort: 8075
|
||
protocol: TCP
|
||
- name: gossip
|
||
containerPort: 8074
|
||
protocol: TCP
|
||
|
||
service:
|
||
type: ClusterIP
|
||
port: 8065
|
||
targetPort: api
|
||
|
||
annotations: {}
|
||
labels: {}
|
||
|
||
ports:
|
||
- name: metrics
|
||
port: 8067
|
||
targetPort: metrics
|
||
|
||
updateStrategy:
|
||
type: RollingUpdate
|
||
rollingUpdate:
|
||
maxSurge: 0
|
||
maxUnavailable: 1
|
||
|
||
ingress:
|
||
enabled: true
|
||
certManager: false
|
||
apiVersion:
|
||
ingressClassName: traefik
|
||
hostname: loop.example.com
|
||
path: /
|
||
pathType: ImplementationSpecific
|
||
annotations: {}
|
||
# cert-manager.io/cluster-issuer: ""
|
||
tls: false
|
||
|
||
## extraHosts:
|
||
## - name: app.local
|
||
## path: /
|
||
## - name: app.local
|
||
## path: /
|
||
## servicePort: http
|
||
##
|
||
## extraPaths:
|
||
## - path: /*
|
||
## backend:
|
||
## serviceName: ssl-redirect
|
||
## servicePort: use-annotation
|
||
##
|
||
## extraTls:
|
||
## - hosts:
|
||
## - app.local
|
||
## secretName: app.local-tls
|
||
##
|
||
nginx:
|
||
configurationSnippet:
|
||
serverSnippet:
|
||
|
||
resources: {}
|
||
## resources:
|
||
## limits:
|
||
## cpu: 100m
|
||
## memory: 128Mi
|
||
## requests:
|
||
## cpu: 100m
|
||
## memory: 128Mi
|
||
|
||
autoscaling:
|
||
enabled: false
|
||
minReplicas: 1
|
||
maxReplicas: 10
|
||
# targetCPU: 50
|
||
# targetMemory: 50
|
||
|
||
nodeSelector: {}
|
||
tolerations: []
|
||
topologySpreadConstraints: []
|
||
|
||
## Allowed values: soft, hard
|
||
##
|
||
podAffinityPreset: ""
|
||
|
||
## Allowed values: soft, hard
|
||
##
|
||
podAntiAffinityPreset: soft
|
||
|
||
## Allowed values: soft, hard
|
||
##
|
||
nodeAffinityPreset:
|
||
## Node affinity type
|
||
## Allowed values: soft, hard
|
||
##
|
||
type: ""
|
||
## Node label key to match
|
||
## E.g.
|
||
## key: "kubernetes.io/e2e-az-name"
|
||
##
|
||
key: ""
|
||
## Node label values to match
|
||
## E.g.
|
||
## values:
|
||
## - e2e-az1
|
||
## - e2e-az2
|
||
##
|
||
values: []
|
||
|
||
## Affinity for pod assignment
|
||
## Note: podAffinityPreset, podAntiAffinityPreset, and nodeAffinityPreset will be ignored when it's set
|
||
##
|
||
affinity: {}
|
||
|
||
env: {}
|
||
|
||
## Array of sources to populate environment variables in the container from
|
||
## Ref: https://v1-18.docs.kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/#envfromsource-v1-core
|
||
##
|
||
## envFrom:
|
||
## - configMapRef:
|
||
## name: special-config
|
||
## - secretRef:
|
||
## name: '{{ include "app.fullname" . }}-env'
|
||
##
|
||
envFrom:
|
||
- configMapRef:
|
||
name: '{{ template "app.fullname" . }}-configs'
|
||
- secretRef:
|
||
name: '{{ template "app.fullname" . }}-secrets'
|
||
|
||
checksums:
|
||
- secrets.yaml
|
||
- configmaps.yaml
|
||
|
||
volumes: []
|
||
volumeMounts: []
|
||
|
||
livenessProbe:
|
||
enabled: true
|
||
initialDelaySeconds: 90
|
||
periodSeconds: 15
|
||
timeoutSeconds: 5
|
||
failureThreshold: 6
|
||
successThreshold: 1
|
||
httpGet:
|
||
path: /api/v4/system/ping
|
||
port: 8065
|
||
readinessProbe:
|
||
enabled: true
|
||
initialDelaySeconds: 15
|
||
periodSeconds: 10
|
||
timeoutSeconds: 5
|
||
failureThreshold: 6
|
||
successThreshold: 1
|
||
httpGet:
|
||
path: /api/v4/system/ping
|
||
port: 8065
|
||
|
||
configMaps:
|
||
configs:
|
||
data:
|
||
MM_EMAILSETTINGS_PUSHNOTIFICATIONSERVER: "https://push.loop.ru" #Этот параметр указывает сервер, который отправляет push-уведомления
|
||
MM_EMAILSETTINGS_SENDPUSHNOTIFICATIONS: "true" # Включить email-уведомления
|
||
MM_EXPERIMENTALSETTINGS_ENABLEAPPBAR: "true" #Этот параметр указывает, включена ли панель приложения
|
||
MM_FEATUREFLAGS_AppsEnabled: "true" #Указывает на доступность и возможность использования определенных приложений или функций, например, доступ к галерее для загрузки изображений
|
||
MM_FILESETTINGS_AMAZONS3BUCKET: "looponprem-bucket" #Имя корзины S3, где хранятся файлы
|
||
MM_FILESETTINGS_AMAZONS3ENDPOINT: "loop-minio:9000" #URL конечной точки хранилища S3
|
||
MM_FILESETTINGS_AMAZONS3PATHPREFIX: "loop" #Эта опция позволяет указать путь к файлам на S3
|
||
MM_FILESETTINGS_AMAZONS3SSE: "false" #Параметр указывает, включено ли шифрование на стороне сервера (SSL) для S3
|
||
MM_FILESETTINGS_AMAZONS3SSL: "false" #Параметр указывает, должно ли подключение к Amazon S3 осуществляться через SSL
|
||
MM_FILESETTINGS_DRIVERNAME: "amazons3" #Имя драйвера для работы с файлами
|
||
MM_FILESETTINGS_MAXFILESIZE: "1048576000" #Максимальный размер файла для загрузки, указан в байтах
|
||
MM_JOBSETTINGS_RUNJOBS: "false" #Указывает, должны ли выполняться задания
|
||
MM_JOBSETTINGS_RUNSCHEDULER: "false" #Флаг указывает, должен ли быть запущен планировщик задач
|
||
MM_LOGSETTINGS_CONSOLEJSON: "false" #Флаг указывает, должен ли вывод в консоль быть в формате JSON
|
||
MM_LOGSETTINGS_CONSOLELEVEL: "DEBUG" #Уровень логирования для вывода в консоль
|
||
MM_LOGSETTINGS_FILELEVEL: "DEBUG" #Уровень логирования для записи в файл
|
||
MM_PLUGINSETTINGS_AUTOMATICPREPACKAGEDPLUGINS: "true" #Флаг указывает, разрешена ли автоматическая загрузка предустановленных плагинов
|
||
MM_PLUGINSETTINGS_ENABLEUPLOADS: "true" #Флаг указывает, разрешена ли загрузка плагинов
|
||
MM_SERVICEENVIRONMENT: "production" #Среда, в которой работает приложение (например, "production")
|
||
MM_SERVICESETTINGS_ENABLEBOTACCOUNTCREATION: "true" #Флаг указывает, разрешено ли создание аккаунтов ботов
|
||
MM_SERVICESETTINGS_ENABLETEAMCREATION: "true" # Разрешить создание команд
|
||
MM_SERVICESETTINGS_ENABLEUSERCREATION: "true" # Разрешить создание пользователей
|
||
MM_SERVICESETTINGS_ENABLEOPENSERVER: "true" # Открытый доступ к серверу
|
||
MM_SERVICESETTINGS_ENABLECUSTOMEMOJI: "true" # Поддержка пользовательских эмодзи
|
||
MM_SERVICESETTINGS_ENABLELINKPREVIEWS: "true" # Предпросмотр ссылок
|
||
MM_SERVICESETTINGS_ENABLEOAUTHSERVICEPROVIDER: "true" #Используется для определения, разрешено ли использование сторонних провайдеров OAuth-сервисов
|
||
MM_SERVICESETTINGS_ENABLEUSERACCESSTOKENS: "true" #Флаг указывает, разрешены ли токены доступа пользователей
|
||
MM_SERVICESETTINGS_GIPHYSDKKEY: "<GiphySDKkey>" #Ключ Giphy SDK для интеграции с Giphy
|
||
MM_SERVICESETTINGS_LISTENADDRESS: ":8065" #Адрес и порт, на котором служба прослушивает
|
||
MM_SERVICESETTINGS_SITEURL: "https://loop.example.com" #Публичный URL службы
|
||
MM_SQLSETTINGS_DRIVERNAME: "postgres" #Имя драйвера базы данных
|
||
MM_TEAMSETTINGS_MAXUSERSPERTEAM: "500" #Максимальное количество пользователей в команде
|
||
MM_EMAILSETTINGS_REQUIREMAILVERIFICATION: "true" # Требовать подтверждение email
|
||
MM_EMAILSETTINGS_FEEDBACKEMAIL: "" # Email-адрес для сбора отзывов и обратной связи от пользователей
|
||
MM_EMAILSETTINGS_FEEDBACKNAME: "" # Имя отправителя, которое будет отображаться в письмах с отзывами
|
||
MM_EMAILSETTINGS_FEEDBACKORGANIZATION: "" # Название организации/компании, от имени которой отправляются письма с отзывами
|
||
MM_EMAILSETTINGS_SMTPUSERNAME: "" # SMTP логин
|
||
MM_EMAILSETTINGS_CONNECTIONSECURITY: "" # тип подключения: пусто, TLS или STARTTLS
|
||
MM_EMAILSETTINGS_SMTPPASSWORD: "" # SMTP пароль для аутентификации
|
||
MM_EMAILSETTINGS_ENABLESMTPAUTH: "" # Включить SMTP-аутентификацию (true/false)
|
||
MM_EMAILSETTINGS_SMTPPORT: "" # SMTP порт для подключения (например, 25, 465, 587)
|
||
MM_EMAILSETTINGS_REPLYTOADDRESS: "" # Адрес для ответа (куда будут приходить ответы на письма)
|
||
MM_EMAILSETTINGS_SMTPSERVER: "" # SMTP сервер для отправки писем (например, smtp.gmail.com)
|
||
## Для запуска Loop Calls OnPrem
|
||
MM_CLOUD_INSTALLATION_ID: "loop.example.com" # В качестве значения укажите домен вашего рабочего пространства, MM_SERVICESETTINGS_SITEURL.
|
||
|
||
## The following environment variables are required to use Elasticsearch for searching in loop.
|
||
# MM_ELASTICSEARCHSETTINGS_CONNECTIONURL: ""
|
||
# MM_ELASTICSEARCHSETTINGS_ENABLEINDEXING: "false"
|
||
# MM_ELASTICSEARCHSETTINGS_ENABLESEARCHING: "false"
|
||
|
||
## The following environment variables are required to run loop in clustered mode.
|
||
# MM_CLUSTERSETTINGS_ENABLE: "true"
|
||
# MM_CLUSTERSETTINGS_CLUSTERNAME: "loop-example-cluster"
|
||
# MM_CLUSTERSETTINGS_ENABLEEXPERIMENTALGOSSIPENCRYPTION: "true"
|
||
# MM_CLUSTERSETTINGS_ENABLEGOSSIPCOMPRESSION: "false"
|
||
# MM_CLUSTERSETTINGS_READONLYCONFIG: "false"
|