2024-07-11 12:13:26 +00:00
global :
2024-07-11 14:19:48 +00:00
postgresql :
auth :
database : yonote
username : yonote
2024-07-15 06:50:18 +00:00
password : example_pass
postgresPassword : example_pass_postgres
2024-07-11 14:19:48 +00:00
2024-07-11 12:13:26 +00:00
yonote :
ingress :
2024-07-11 14:19:48 +00:00
ingressClassName : traefik
dbMigrationEnv : production-ssl-disabled
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-15 06:43:37 +00:00
DEPLOYMENT : undefined #Режим приложения
2024-07-11 12:13:26 +00:00
FORCE_HTTPS : "false"
2024-07-11 14:19:48 +00:00
PGSSLMODE : disable
2024-07-15 06:43:37 +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-15 06:43:37 +00:00
DEFAULT_LANGUAGE : ru_RU #Язык по умолчанию
2024-07-11 14:19:48 +00:00
ENABLE_UPDATES : "false"
AI_URL : http://engate.wilix.dev:5001
2024-07-15 06:43:37 +00:00
URL : 'http://app.{{ .Values.global.yonote.baseListenAddress }}' #Базовый url приложения
COLLABORATION_URL : 'wss://app.{{ .Values.global.yonote.baseListenAddress }}' #сервер, для нормальной работы это не нужно устанавливать
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-15 06:43:37 +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-15 06:43:37 +00:00
AWS_S3_UPLOAD_MAX_SIZE : "226214400" #Максимальный размер хранилища
AWS_S3_FORCE_PATH_STYLE : "false" #Следует ли принудительно использовать URL-адреса стиля пути для объектов S3
2024-07-11 14:19:48 +00:00
2024-07-15 06:43:37 +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 : ""
SMTP_SECURE : "" #connection will be upgraded: https://nodemailer.com/smtp/
SMTP_REQUIRE_TLS : ""
2024-07-11 14:45:41 +00:00
secret :
stringData :
DATABASE_URL : 'postgres://{{ .Values.global.postgresql.auth.username }}:{{ .Values.global.postgresql.auth.password }}@yonote-db/{{ .Values.global.postgresql.auth.database }}'
2024-07-15 06:49:46 +00:00
POSTGRES_PASSWORD :
2024-07-11 21:57:34 +00:00
AI_API_KEY : ""
2024-07-15 06:43:37 +00:00
AWS_ACCESS_KEY_ID : "" #Ваш идентификатор ключа доступа к AWS. Поведение в SelfHosted: устанавливает логин сервис аккаунта для доступа приложения к Minio S3 хранилищу
AWS_SECRET_ACCESS_KEY : "" #Ваш секретный ключ доступа AWS. Поведение в SelfHosted: устанавливает пароль сервис аккаунта для доступа приложения к Minio S3 хранилищу
2024-07-11 21:57:34 +00:00
OIDC_CLIENT_SECRET : ""
SECRET_KEY : ""
SMTP_PASSWORD : ""
UTILS_SECRET : ""
YANDEX_METRIKA_ID : ""
TELEGRAM_BOT_TOKEN : ""
UNSPLASH_API_ACCESS_KEY : ""
REDIS_URL : "" #redis://username:password>@<redis>:6379
LICENSE_KEY : ""
SERVICE_WORKER_PUBLIC_KEY : ""
SERVICE_WORKER_PRIVATE_KEY : ""
QUOTA_TOKEN : ""
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
name : yonote
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
args :
2024-07-11 21:57:34 +00:00
#- ./build/server/index.js
#- '--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
args :
2024-07-11 21:57:34 +00:00
#- ./build/server/index.js
#- '--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
args :
2024-07-11 21:57:34 +00:00
#- ./build/server/index.js
#- '--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
args :
2024-07-11 21:57:34 +00:00
#- ./build/server/index.js
#- '--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
args :
2024-07-11 21:57:34 +00:00
#- ./build/server/index.js
#- '--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
keycloak :
enabled : true
fullnameOverride : yonote-keycloak
nameOverride : keycloak
2024-07-15 06:43:37 +00:00
hostName : auth.example.com
realmName : yonote
2024-07-11 21:57:34 +00:00
auth :
adminUser : admin
adminPassword : "12345"
2024-07-15 06:43:37 +00:00
ingress :
enabled : true
annotations :
kubernetes.io/ingress.class : traefik
hosts :
- host : keycloak.example.com
paths :
- path : /
pathType : ImplementationSpecific
tls :
- secretName : keycloak-tls
hosts :
- keycloak.example.com
2024-07-11 21:57:34 +00:00
postgresql :
name : postgresql
enabled : true
postgresqlUsername : keycloak
postgresqlPassword : keycloak
postgresqlDatabase : keycloak
2024-07-15 06:43:37 +00:00
persistence :
size : 500Mi
# externalDatabase: #Если используете не встроенную БД
# host: <your-external-db-host>
# port: 5432
# database: keycloak
# user: keycloak
# password: <your-external-db-password>
# existingSecret: app-postgresql
# existingSecretKey: postgresql-password
extraEnv : |
- name : KC_SPI_ADMIN_REALM
value : 'yonote'
2024-07-11 21:57:34 +00:00
service :
type : ClusterIP
port : 8080
2024-07-15 06:43:37 +00:00
minio :
enabled : true
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
policy : none