2024-07-11 12:13:26 +00:00
global :
2024-07-16 07:33:04 +00:00
name : yonote-app
2024-07-11 14:19:48 +00:00
postgresql :
auth :
database : yonote
username : yonote
2024-07-11 12:13:26 +00:00
yonote :
ingress :
2024-07-11 14:19:48 +00:00
ingressClassName : traefik
2024-07-16 07:33:04 +00:00
dbMigrationEnv : production-ssl-disabled # Режим подключения к базе данных при выполнении миграций. При использовании SSL подключения, установите значение `production`
2024-07-11 14:19:48 +00:00
2024-07-11 12:13:26 +00:00
keycloak :
hostName : auth.example.com
realmName : yonote
2024-07-11 14:19:48 +00:00
2024-07-11 12:13:26 +00:00
baseListenAddress : example.com
2024-07-11 14:19:48 +00:00
2024-07-11 12:13:26 +00:00
config :
plain :
data :
2024-07-16 07:33:04 +00:00
NODE_ENV : production
2024-07-11 12:13:26 +00:00
FORCE_HTTPS : "false"
2024-07-16 07:33:04 +00:00
PGSSLMODE : disable # Отключает SSL подключение к базе данных. Уберите эту строку, если вы используете SSL подключение к PostgreSQL
2024-07-11 14:19:48 +00:00
2024-07-16 07:33:04 +00:00
BIND_HOST : 0.0 .0 .0 # Хост по умолчанию
PORT : "3000" # Порт по умолчанию
2024-07-11 14:19:48 +00:00
REDIS_URL : redis://yonote-redis-master:6379
2024-07-16 07:33:04 +00:00
DEFAULT_LANGUAGE : ru_RU # Язык по умолчанию
2024-07-11 14:19:48 +00:00
ENABLE_UPDATES : "false"
2024-07-16 07:33:04 +00:00
AI_URL : 1234
AI_API_KEY : 1234
2024-07-11 14:19:48 +00:00
2024-07-16 07:33:04 +00:00
URL : 'http://app.{{ .Values.global.yonote.baseListenAddress }}' # Базовый url приложения
COLLABORATION_URL : 'wss://app.{{ .Values.global.yonote.baseListenAddress }}' # Cе р ве р , для нормальной работы это не нужно устанавливать
2024-07-11 14:19:48 +00:00
OIDC_DISPLAY_NAME : email
OIDC_SCOPES : openid email
2024-07-11 12:13:26 +00:00
OIDC_CLIENT_ID : yonote
OIDC_AUTH_URI : 'http://{{ .Values.global.yonote.keycloak.hostName }}/realms/{{ .Values.global.yonote.keycloak.realmName }}/protocol/openid-connect/auth'
OIDC_LOGOUT_URI : 'http://{{ .Values.global.yonote.keycloak.hostName }}/realms/{{ .Values.global.yonote.keycloak.realmName }}/protocol/openid-connect/logout'
OIDC_TOKEN_URI : 'http://{{ .Values.global.yonote.keycloak.hostName }}/realms/{{ .Values.global.yonote.keycloak.realmName }}/protocol/openid-connect/token'
OIDC_USERINFO_URI : 'http://{{ .Values.global.yonote.keycloak.hostName }}/realms/{{ .Values.global.yonote.keycloak.realmName }}/protocol/openid-connect/userinfo'
2024-07-11 14:19:48 +00:00
AWS_S3_ACL : private
2024-07-16 07:33:04 +00:00
AWS_S3_UPLOAD_BUCKET_URL : example-url-s3 # Адрес S3 хранилища
AWS_S3_UPLOAD_BUCKET_NAME : yonote-bucket # Имя хранилища - полный URL = http://127.0.0.1:9000/yonote-bucket
2024-07-11 12:13:26 +00:00
AWS_REGION : ""
2024-07-16 07:33:04 +00:00
AWS_S3_UPLOAD_MAX_SIZE : "226214400" # Максимальный размер хранилища
AWS_S3_FORCE_PATH_STYLE : "false" # Следует ли принудительно использовать URL-адреса стиля пути для объектов S3
S3_PROXY_ENABLED : false # Включает или выключает проксирование загрузки/выгрузки файлов на S3 через бэкенд, принимает boolean
S3_MULTIPART_PART_SIZE : 1000 # Настройка размера частей для multipart загрузки на S3 хранилище, принимает число, по умолчанию 1000 (1GB), значение в мегабайтах.
2024-07-11 14:19:48 +00:00
2024-07-16 07:33:04 +00:00
SUBDOMAINS_ENABLED : "true" # Поддержка поддоменов для команд
BASENAME_FOR_SUBDOMAIN : '{{ .Values.global.yonote.baseListenAddress }}' # Имя хоста
NOT_ALLOWED_SUBDOMAINS : app,collaboration,auth,api,dev,docs,doc,admin,test,quota,billing,i,storage,host,updates # Запрещенные поддомены
2024-07-11 14:19:48 +00:00
2024-07-11 12:13:26 +00:00
TELEGRAM_API_URL : https://api.telegram.org
2024-07-11 14:19:48 +00:00
UNSPLASH_API_BASENAME : https://api.unsplash.com
RESERVED_SUBDOMAINS : about,account,admin,advertising,api,app,assets,archive,beta,billing,blog,cache,cdn,code,community,dashboard,developer,developers,forum,help,home,http,https,imap,localhost,mail,marketing,mobile,multiplayer,new,news,newsletter,ns1,ns2,ns3,ns4,password,profile,realtime,sandbox,script,scripts,setup,signin,signup,site,smtp,support,status,static,stats,test,update,updates,ws,wss,web,websockets,www,www1,www2,www3,www4
2024-07-11 12:13:26 +00:00
SMTP_HOST : ""
SMTP_USERNAME : ""
SMTP_FROM_EMAIL : ""
SMTP_REPLY_EMAIL : ""
SMTP_PORT : ""
2024-07-16 07:33:04 +00:00
SMTP_SECURE : "" # connection will be upgraded: https://nodemailer.com/smtp/
2024-07-11 12:13:26 +00:00
SMTP_REQUIRE_TLS : ""
2024-07-11 14:19:48 +00:00
yonote_cron_calendar_events :
cron_enabled : "true"
url : http://yonote-web/api/cron.calendar_events
yonote_cron_task_scheduler :
cron_enabled : "true"
url : http://yonote-web/api/cron.schedule
2024-07-11 12:13:26 +00:00
yonote-web :
fullnameOverride : yonote-web
nameOverride : yonote-web
name : web
2024-07-11 14:19:48 +00:00
2024-07-11 12:13:26 +00:00
image :
registry : images.updates.yonote.ru
repository : yonote
2024-07-11 14:19:48 +00:00
tag : 1.19 .5
2024-07-11 12:13:26 +00:00
pullPolicy : IfNotPresent
2024-07-11 14:19:48 +00:00
2024-07-16 07:33:04 +00:00
command : [ "/bin/sh" , "-c" ]
args : [ 'yarn start:selfhosted --services=web' ]
2024-07-11 14:19:48 +00:00
initContainers :
- name : yonote-migration
2024-07-11 21:57:34 +00:00
image : images.updates.yonote.ru/yonote:1.19.5
2024-07-11 14:19:48 +00:00
imagePullPolicy : IfNotPresent
command :
- /bin/sh
- '-c'
- npx sequelize db:migrate
env :
- name : NODE_ENV
value : '{{ .Values.global.yonote.dbMigrationEnv }}' # В настройках для sequelize прописан такой env для запуска миграций без ssl
envFrom :
- configMapRef :
name : yonote-configs
- secretRef :
name : yonote-secrets
2024-07-11 12:13:26 +00:00
resources :
limits :
2024-07-11 14:19:48 +00:00
cpu : 350m
memory : 512Mi
2024-07-11 12:13:26 +00:00
requests :
2024-07-11 14:19:48 +00:00
cpu : 200m
memory : 128Mi
containerPorts :
- containerPort : 3000
name : app
protocol : TCP
service :
type : ClusterIP
port : 80
targetPort : app
envFrom :
- configMapRef :
name : yonote-configs
- secretRef :
name : yonote-secrets
2024-07-11 12:13:26 +00:00
ingress :
enabled : true
2024-07-11 14:19:48 +00:00
hostname : '"*.yonote.example.com"'
ingressClassName : ""
2024-07-11 12:13:26 +00:00
path : '/'
pathType : Prefix
2024-07-11 14:19:48 +00:00
tls : false
podLabels :
redis-client : 'true'
podAnnotations :
checksum/configmap : "{{ toJson .Values.global.yonote.config.plain | sha256sum }}"
checksum/secret : "{{ toJson .Values.global.yonote.config.secret | sha256sum }}"
readinessProbe :
enabled : true
failureThreshold : 6
initialDelaySeconds : 60
periodSeconds : 10
successThreshold : 1
timeoutSeconds : 5
httpGet :
path : /_health
port : app
livenessProbe :
enabled : true
failureThreshold : 6
initialDelaySeconds : 60
periodSeconds : 10
successThreshold : 1
timeoutSeconds : 5
httpGet :
path : /_health
port : app
yonote-websocket :
fullnameOverride : yonote-websockets
nameOverride : yonote-websockets
name : websockets
image :
registry : images.updates.yonote.ru
repository : yonote
tag : 1.19 .5
pullPolicy : IfNotPresent
2024-07-16 07:33:04 +00:00
command : [ "/bin/sh" , "-c" ]
args : [ 'yarn start:selfhosted --services=websockets' ]
2024-07-11 14:19:48 +00:00
resources :
limits :
cpu : 250m
memory : 512Mi
requests :
cpu : 50m
memory : 128Mi
checksums : null
envFrom :
- configMapRef :
name : yonote-configs
- secretRef :
name : yonote-secrets
containerPorts :
- containerPort : 3000
name : app
protocol : TCP
service :
type : ClusterIP
port : 80
targetPort : app
ingress :
enabled : true
hostname : '"*.yonote.example.com"'
ingressClassName : ""
path : '/realtime'
pathType : Prefix
tls : false
podLabels :
redis-client : 'true'
podAnnotations :
checksum/configmap : "{{ toJson .Values.global.yonote.config.plain | sha256sum }}"
checksum/secret : "{{ toJson .Values.global.yonote.config.secret | sha256sum }}"
readinessProbe :
enabled : true
failureThreshold : 6
initialDelaySeconds : 60
periodSeconds : 10
successThreshold : 1
timeoutSeconds : 5
httpGet :
path : /_health
port : app
livenessProbe :
enabled : true
failureThreshold : 6
initialDelaySeconds : 60
periodSeconds : 10
successThreshold : 1
timeoutSeconds : 5
httpGet :
path : /_health
port : app
yonote-whiteboard :
fullnameOverride : yonote-whiteboard
nameOverride : yonote-whiteboard
name : whiteboard
image :
registry : images.updates.yonote.ru
repository : yonote
tag : 1.19 .5
pullPolicy : IfNotPresent
2024-07-16 07:33:04 +00:00
command : [ "/bin/sh" , "-c" ]
args : [ 'yarn start:selfhosted --services=whiteboard' ]
2024-07-11 14:19:48 +00:00
resources :
limits :
cpu : 250m
memory : 512Mi
requests :
cpu : 50m
memory : 128Mi
checksums : null
envFrom :
- configMapRef :
name : yonote-configs
- secretRef :
name : yonote-secrets
containerPorts :
- containerPort : 3000
name : app
protocol : TCP
service :
type : ClusterIP
port : 80
targetPort : app
ingress :
enabled : true
hostname : '"*.yonote.example.com"'
ingressClassName : ""
path : '/whiteboard'
pathType : Prefix
tls : false
podLabels :
redis-client : 'true'
podAnnotations :
checksum/configmap : "{{ toJson .Values.global.yonote.config.plain | sha256sum }}"
checksum/secret : "{{ toJson .Values.global.yonote.config.secret | sha256sum }}"
readinessProbe :
enabled : true
failureThreshold : 6
initialDelaySeconds : 60
periodSeconds : 10
successThreshold : 1
timeoutSeconds : 5
httpGet :
path : /_health
port : app
livenessProbe :
enabled : true
failureThreshold : 6
initialDelaySeconds : 60
periodSeconds : 10
successThreshold : 1
timeoutSeconds : 5
httpGet :
path : /_health
port : app
yonote-worker :
fullnameOverride : yonote-worker
nameOverride : yonote-worker
name : worker
image :
registry : images.updates.yonote.ru
repository : yonote
tag : 1.19 .5
pullPolicy : IfNotPresent
2024-07-16 07:33:04 +00:00
command : [ "/bin/sh" , "-c" ]
args : [ 'yarn start:selfhosted --services=worker' ]
2024-07-11 14:19:48 +00:00
resources :
limits :
cpu : 500m
memory : 1Gi
requests :
cpu : 250m
memory : 256Mi
checksums : null
2024-07-11 12:13:26 +00:00
containerPorts :
- containerPort : 3000
name : app
protocol : TCP
2024-07-11 14:19:48 +00:00
2024-07-11 12:13:26 +00:00
service :
type : ClusterIP
port : 80
targetPort : app
2024-07-11 14:19:48 +00:00
2024-07-11 12:13:26 +00:00
envFrom :
- configMapRef :
name : yonote-configs
- secretRef :
name : yonote-secrets
podLabels :
redis-client : 'true'
2024-07-11 14:19:48 +00:00
2024-07-11 12:13:26 +00:00
podAnnotations :
checksum/configmap : "{{ toJson .Values.global.yonote.config.plain | sha256sum }}"
checksum/secret : "{{ toJson .Values.global.yonote.config.secret | sha256sum }}"
2024-07-11 14:19:48 +00:00
2024-07-11 12:13:26 +00:00
readinessProbe :
enabled : true
failureThreshold : 6
initialDelaySeconds : 60
periodSeconds : 10
successThreshold : 1
timeoutSeconds : 5
httpGet :
path : /_health
port : app
2024-07-11 14:19:48 +00:00
2024-07-11 12:13:26 +00:00
livenessProbe :
enabled : true
failureThreshold : 6
initialDelaySeconds : 60
periodSeconds : 10
successThreshold : 1
timeoutSeconds : 5
httpGet :
path : /_health
port : app
2024-07-11 14:19:48 +00:00
yonote-collaboration :
fullnameOverride : yonote-collaboration
nameOverride : yonote-collaboration
name : collaboration
image :
registry : images.updates.yonote.ru
repository : yonote
tag : 1.19 .5
pullPolicy : IfNotPresent
2024-07-16 07:33:04 +00:00
command : [ "/bin/sh" , "-c" ]
args : [ 'yarn start:selfhosted --services=collaboration' ]
2024-07-11 14:19:48 +00:00
checksums : null
containerPorts :
- containerPort : 3000
name : app
protocol : TCP
service :
type : ClusterIP
port : 80
targetPort : app
ingress :
enabled : true
hostname : '"*.yonote.example.com"'
ingressClassName : ""
path : '/collaboration'
pathType : Prefix
tls : false
envFrom :
- configMapRef :
name : yonote-configs
- secretRef :
name : yonote-secrets
podLabels :
redis-client : 'true'
podAnnotations :
checksum/configmap : "{{ toJson .Values.global.yonote.config.plain | sha256sum }}"
checksum/secret : "{{ toJson .Values.global.yonote.config.secret | sha256sum }}"
readinessProbe :
enabled : true
failureThreshold : 6
initialDelaySeconds : 60
periodSeconds : 10
successThreshold : 1
timeoutSeconds : 5
httpGet :
path : /_health
port : app
livenessProbe :
enabled : true
failureThreshold : 6
initialDelaySeconds : 60
periodSeconds : 10
successThreshold : 1
timeoutSeconds : 5
httpGet :
path : /_health
port : app
yonote-database :
enabled : true
fullnameOverride : yonote-db
nameOverride : db
2024-07-15 06:43:37 +00:00
2024-07-11 14:19:48 +00:00
primary :
persistence :
2024-07-11 21:57:34 +00:00
size : 500Mi
2024-07-11 14:19:48 +00:00
resources :
limits :
cpu : 250m
memory : 512Mi
requests :
cpu : 50m
memory : 256Mi
yonote-redis :
enabled : true
fullnameOverride : yonote-redis
nameOverride : redis
architecture : standalone
2024-07-15 06:43:37 +00:00
2024-07-11 14:19:48 +00:00
auth :
enabled : false
2024-07-15 06:43:37 +00:00
2024-07-11 14:19:48 +00:00
master :
persistence :
2024-07-11 21:57:34 +00:00
size : 200Mi
2024-07-11 14:19:48 +00:00
resources :
limits :
cpu : 250m
memory : 256Mi
requests :
cpu : 50m
2024-07-11 21:57:34 +00:00
memory : 128Mi
2024-07-15 06:43:37 +00:00
minio :
enabled : true
2024-07-16 07:33:04 +00:00
name : minio
2024-07-15 06:43:37 +00:00
fullnameOverride : yonote-minio
nameOverride : minio
accessKey : "minioadmin"
secretKey : "minioadminsecret"
2024-07-11 21:57:34 +00:00
persistence :
2024-07-15 06:43:37 +00:00
enabled : true
2024-07-11 21:57:34 +00:00
size : 500Mi
2024-07-15 06:43:37 +00:00
ingress :
enabled : true
annotations :
kubernetes.io/ingress.class : traefik
hosts :
- host : minio.example.com
paths :
- path : /
pathType : ImplementationSpecific
tls :
- secretName : minio-tls
hosts :
- minio.example.com
resources :
requests :
memory : 512Mi
cpu : 250m
limits :
memory : 1Gi
cpu : 500m
buckets :
- name : mybucket
policy : none
- name : anotherbucket
2024-07-16 07:33:04 +00:00
policy : none
keycloak-database :
name : keycloak-db
enabled : true
fullnameOverride : yonote-keycloak-db
nameOverride : db
primary :
persistence :
size : 512Mi
keycloak :
name : keycloack
enabled : true
nameOverride : keycloak
fullnameOverride : yonote-keycloak
image :
registry : images.updates.yonote.ru
repository : yonote-keycloak
tag : latest
command :
- /bin/sh
- -c
- |
"/opt/keycloak/bin/kc.sh" "start"
configMaps :
configs :
data :
KEYCLOAK_ADMIN : root
#KEYCLOAK_ADMIN_PASSWORD: ${KC_PASSWORD}
KC_PROXY : edge
KC_HOSTNAME_STRICT : "false"
KC_HOSTNAME_ADMIN : auth.yonote.develop.wilix.dev/admin
KC_HOSTNAME : auth.yonote.develop.wilix.dev
KC_DB : postgres
KC_DB_URL : postgres
KC_DB_URL_DATABASE : keycloak
KC_DB_USERNAME : keycloak
#KC_DB_PASSWORD: ${KC_DB_PASSWORD}
KC_HOSTNAME_STRICT_HTTPS : "false"
KC_HOSTNAME_PATH : "/"
envFrom :
- configMapRef :
name : '{{ template "app.fullname" . }}-configs'
- secretRef :
name : '{{ template "app.fullname" . }}-secrets'
checksums :
- secrets.yaml
- configmaps.yaml
containerPorts :
- containerPort : 8080
name : app
protocol : TCP
resources :
limits :
cpu : 500m
memory : 512Mi
requests :
cpu : 150m
memory : 128Mi
service :
service :
type : ClusterIP
port : 8080
targetPort : 8080
ingress :
enabled : true
certManager : true
pathType : ImplementationSpecific
hostname : auth.example.com
path : /
tls : true
livenessProbe :
enabled : true
failureThreshold : 6
initialDelaySeconds : 60
periodSeconds : 15
successThreshold : 1
timeoutSeconds : 5
httpGet :
path : /
port : app
readinessProbe :
enabled : true
failureThreshold : 6
initialDelaySeconds : 60
periodSeconds : 15
successThreshold : 1
timeoutSeconds : 5
httpGet :
path : /
port : app