mirror of
https://github.com/Mintplex-Labs/anything-llm
synced 2026-04-25 17:15:37 +02:00
270 lines
7.1 KiB
YAML
270 lines
7.1 KiB
YAML
replicaCount: 1
|
|
|
|
initContainers: []
|
|
# - name: init-myservice
|
|
# image: busybox
|
|
# command: ['sh', '-c', 'chown -R 1000:1000 /storage']
|
|
|
|
image:
|
|
repository: mintplexlabs/anythingllm
|
|
pullPolicy: IfNotPresent
|
|
tag: "1.12.1"
|
|
|
|
imagePullSecrets: []
|
|
nameOverride: ""
|
|
fullnameOverride: ""
|
|
|
|
persistentVolume:
|
|
# AnythingLLM storage data Persistent Volume access modes
|
|
# Must match those of existing PV or dynamic provisioner
|
|
# Ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
|
|
#
|
|
accessModes:
|
|
- ReadWriteOnce
|
|
|
|
# AnythingLLM storage data Persistent Volume labels
|
|
#
|
|
labels: {}
|
|
|
|
# AnythingLLM storage data Persistent Volume annotations
|
|
#
|
|
annotations: {}
|
|
|
|
# AnythingLLM storage data Persistent Volume existing claim name
|
|
# If defined, PVC must be created manually before volume will be bound
|
|
#
|
|
existingClaim: ""
|
|
|
|
# AnythingLLM storage data Persistent Volume size
|
|
#
|
|
size: 8Gi
|
|
|
|
# AnythingLLM storage data Persistent Volume mount path
|
|
# Must match the STORAGE_DIR config value
|
|
#
|
|
mountPath: /app/server/storage
|
|
|
|
# AnythingLLM storage data Persistent Volume Storage Class
|
|
# If defined, storageClassName: <storageClass>
|
|
# If set to "-", storageClassName: "", which disables dynamic provisioning
|
|
# If undefined (the default) or set to null, no storageClassName spec is
|
|
# set, choosing the default provisioner. (gp2 on AWS, standard on
|
|
# GKE, AWS & OpenStack)
|
|
#
|
|
storageClass: ""
|
|
|
|
# AnythingLLM storage data Persistent Volume Claim Selector
|
|
# Useful if Persistent Volumes have been provisioned in advance
|
|
# Ref: https://kubernetes.io/docs/concepts/storage/persistent-volumes/#selector
|
|
#
|
|
selector: {}
|
|
# selector:
|
|
# matchLabels:
|
|
# release: "stable"
|
|
# matchExpressions:
|
|
# - { key: environment, operator: In, values: [ dev ] }
|
|
|
|
# AnythingLLM storage data Persistent Volume Name
|
|
# Useful if Persistent Volumes have been provisioned in advance and you want to use a specific one
|
|
#
|
|
volumeName: ""
|
|
|
|
serviceAccount:
|
|
# Specifies whether a service account should be created
|
|
create: true
|
|
# Automatically mount a ServiceAccount's API credentials?
|
|
automount: true
|
|
# Annotations to add to the service account
|
|
annotations: {}
|
|
# The name of the service account to use.
|
|
# If not set and create is true, a name is generated using the fullname template
|
|
name: ""
|
|
|
|
# The Anything LLM application deployment strategy
|
|
# This is set to "Recreate" by default as AnythingLLM support is not yet
|
|
# production ready. Once it is, this can be changed to "RollingUpdate"
|
|
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
|
|
#
|
|
strategy:
|
|
# Type of deployment. Can be "Recreate" or "RollingUpdate". Default is "Recreate"
|
|
type: Recreate
|
|
# If type is "RollingUpdate", the following values can be set:
|
|
# rollingUpdate:
|
|
# maxUnavailable: 1
|
|
# maxSurge: 1
|
|
|
|
podAnnotations: {}
|
|
podLabels: {}
|
|
|
|
podSecurityContext:
|
|
# fsGroup needs to be set as the same as the uid/gid used to run the application
|
|
# in order to have the right permissions on mounted volumes
|
|
fsGroup: 1000
|
|
|
|
securityContext: {}
|
|
# capabilities:
|
|
# drop:
|
|
# - ALL
|
|
# readOnlyRootFilesystem: true
|
|
# runAsNonRoot: true
|
|
# runAsUser: 1000
|
|
|
|
# AnythingLLM configuration options, these are stored in a ConfigMap and passed
|
|
# to the container as environment variables.
|
|
# See https://github.com/Mintplex-Labs/anything-llm/blob/render/docker/.env.example
|
|
# for all available environment variables to use as configuration options
|
|
#
|
|
config:
|
|
DISABLE_TELEMETRY: "true"
|
|
NODE_ENV: production
|
|
STORAGE_DIR: /app/server/storage
|
|
UID: "1000"
|
|
GID: "1000"
|
|
|
|
# The preferred method for setting secret environment variables
|
|
# Ref: https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/#define-a-container-environment-variable-with-data-from-a-single-secret
|
|
#
|
|
env: {}
|
|
# - name: OPEN_AI_KEY
|
|
# valueFrom:
|
|
# secretKeyRef:
|
|
# name: openai-secret
|
|
# key: openai_key
|
|
|
|
# Typically used to reference a pre existing Secret containing multiple environment variables
|
|
# Ref: https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/#define-a-container-environment-variable-with-data-from-a-single-secret
|
|
#
|
|
envFrom: {}
|
|
# - secretRef:
|
|
# name: mysecret
|
|
|
|
service:
|
|
type: ClusterIP
|
|
port: 3001
|
|
|
|
# -- Expose the service via gateway-api HTTPRoute
|
|
# Requires Gateway API resources and suitable controller installed within the cluster
|
|
# (see: https://gateway-api.sigs.k8s.io/guides/)
|
|
httpRoute:
|
|
# HTTPRoute enabled.
|
|
enabled: false
|
|
# HTTPRoute annotations.
|
|
annotations: {}
|
|
# Which Gateways this Route is attached to.
|
|
parentRefs:
|
|
- name: gateway
|
|
sectionName: http
|
|
# namespace: default
|
|
# Hostnames matching HTTP header.
|
|
hostnames:
|
|
- chart-example.local
|
|
# List of rules and filters applied.
|
|
rules:
|
|
- matches:
|
|
- path:
|
|
type: PathPrefix
|
|
value: /headers
|
|
# filters:
|
|
# - type: RequestHeaderModifier
|
|
# requestHeaderModifier:
|
|
# set:
|
|
# - name: My-Overwrite-Header
|
|
# value: this-is-the-only-value
|
|
# remove:
|
|
# - User-Agent
|
|
# - matches:
|
|
# - path:
|
|
# type: PathPrefix
|
|
# value: /echo
|
|
# headers:
|
|
# - name: version
|
|
# value: v2
|
|
|
|
ingress:
|
|
enabled: false
|
|
className: ""
|
|
annotations: {}
|
|
# kubernetes.io/ingress.class: nginx
|
|
# kubernetes.io/tls-acme: "true"
|
|
hosts:
|
|
- host: chart-example.local
|
|
paths:
|
|
- path: /
|
|
pathType: ImplementationSpecific
|
|
tls: []
|
|
# - secretName: chart-example-tls
|
|
# hosts:
|
|
# - chart-example.local
|
|
|
|
resources: {}
|
|
# We usually recommend not to specify default resources and to leave this as a conscious
|
|
# choice for the user. This also increases chances charts run on environments with little
|
|
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
|
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
|
# limits:
|
|
# cpu: 100m
|
|
# memory: 128Mi
|
|
# requests:
|
|
# cpu: 100m
|
|
# memory: 128Mi
|
|
|
|
readinessProbe:
|
|
httpGet:
|
|
path: /v1/api/health
|
|
port: 8888
|
|
initialDelaySeconds: 15
|
|
periodSeconds: 5
|
|
successThreshold: 2
|
|
livenessProbe:
|
|
httpGet:
|
|
path: /v1/api/health
|
|
port: 8888
|
|
initialDelaySeconds: 15
|
|
periodSeconds: 5
|
|
failureThreshold: 3
|
|
|
|
# Additional volumes on the output Deployment definition.
|
|
#
|
|
volumes: []
|
|
# - name: foo
|
|
# secret:
|
|
# secretName: mysecret
|
|
# optional: false
|
|
|
|
# Additional volumeMounts on the output Deployment definition.
|
|
#
|
|
volumeMounts: []
|
|
# - name: foo
|
|
# mountPath: "/etc/foo"
|
|
# readOnly: true
|
|
|
|
nodeSelector: {}
|
|
|
|
tolerations: []
|
|
|
|
affinity: {}
|
|
|
|
## Array of extra manifests/obhects to create
|
|
#
|
|
extraObjects: []
|
|
# - apiVersion: external-secrets.io/v1beta1
|
|
# kind: ExternalSecret
|
|
# metadata:
|
|
# name: open-ai-api-key-external-secret
|
|
# namespace: default
|
|
# spec:
|
|
# refreshInterval: 1h
|
|
# secretStoreRef:
|
|
# name: vault
|
|
# kind: ClusterSecretStore
|
|
# target:
|
|
# name: open-ai-api-key-secret
|
|
# template:
|
|
# type: Opaque
|
|
# data:
|
|
# - secretKey: open_ai_key
|
|
# remoteRef:
|
|
# key: secret/data/anything-llm
|
|
# property: open_ai_key
|
|
|