mirror of
https://github.com/infiniflow/ragflow.git
synced 2025-12-08 12:32:30 +08:00
- Unified configuration format: All services now use the same image configuration structure for consistency. - Private registry support: Added imagePullSecrets to enable pulling images from private registries. - Per-service flexibility: Each service can override image-related parameters independently. ### What problem does this PR solve? _Briefly describe what this PR aims to solve. Include background context that will help reviewers understand the purpose of the PR._ ### Type of change - [ ] Bug Fix (non-breaking change which fixes an issue) - [ ] New Feature (non-breaking change which adds functionality) - [ ] Documentation Update - [ ] Refactoring - [ ] Performance Improvement - [ ] Other (please describe):
120 lines
3.6 KiB
YAML
120 lines
3.6 KiB
YAML
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: {{ include "ragflow.fullname" . }}
|
|
labels:
|
|
{{- include "ragflow.labels" . | nindent 4 }}
|
|
app.kubernetes.io/component: ragflow
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
{{- include "ragflow.selectorLabels" . | nindent 6 }}
|
|
app.kubernetes.io/component: ragflow
|
|
{{- with .Values.ragflow.deployment.strategy }}
|
|
strategy:
|
|
{{- . | toYaml | nindent 4 }}
|
|
{{- end }}
|
|
template:
|
|
metadata:
|
|
labels:
|
|
{{- include "ragflow.labels" . | nindent 8 }}
|
|
app.kubernetes.io/component: ragflow
|
|
annotations:
|
|
checksum/config-env: {{ include (print $.Template.BasePath "/env.yaml") . | sha256sum }}
|
|
checksum/config-ragflow: {{ include (print $.Template.BasePath "/ragflow_config.yaml") . | sha256sum }}
|
|
spec:
|
|
{{- if or .Values.imagePullSecrets .Values.ragflow.image.pullSecrets }}
|
|
imagePullSecrets:
|
|
{{- with .Values.imagePullSecrets }}
|
|
{{- toYaml . | nindent 8 }}
|
|
{{- end }}
|
|
{{- with .Values.ragflow.image.pullSecrets }}
|
|
{{- toYaml . | nindent 8 }}
|
|
{{- end }}
|
|
{{- end }}
|
|
containers:
|
|
- name: ragflow
|
|
image: {{ .Values.ragflow.image.repository }}:{{ .Values.ragflow.image.tag }}
|
|
{{- with .Values.ragflow.image.pullPolicy }}
|
|
imagePullPolicy: {{ . }}
|
|
{{- end }}
|
|
ports:
|
|
- containerPort: 80
|
|
name: http
|
|
- containerPort: 9380
|
|
name: http-api
|
|
volumeMounts:
|
|
- mountPath: /etc/nginx/conf.d/ragflow.conf
|
|
subPath: ragflow.conf
|
|
name: nginx-config-volume
|
|
- mountPath: /etc/nginx/proxy.conf
|
|
subPath: proxy.conf
|
|
name: nginx-config-volume
|
|
- mountPath: /etc/nginx/nginx.conf
|
|
subPath: nginx.conf
|
|
name: nginx-config-volume
|
|
{{- with .Values.ragflow.service_conf }}
|
|
- mountPath: /ragflow/conf/local.service_conf.yaml
|
|
subPath: local.service_conf.yaml
|
|
name: service-conf-volume
|
|
{{- end }}
|
|
{{- with .Values.ragflow.llm_factories }}
|
|
- mountPath: /ragflow/conf/llm_factories.json
|
|
subPath: llm_factories.json
|
|
name: service-conf-volume
|
|
{{- end }}
|
|
envFrom:
|
|
- secretRef:
|
|
name: {{ include "ragflow.fullname" . }}-env-config
|
|
{{- with .Values.ragflow.deployment.resources }}
|
|
resources:
|
|
{{- . | toYaml | nindent 10 }}
|
|
{{- end }}
|
|
volumes:
|
|
- name: nginx-config-volume
|
|
configMap:
|
|
name: nginx-config
|
|
- name: service-conf-volume
|
|
configMap:
|
|
name: ragflow-service-config
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: {{ include "ragflow.fullname" . }}
|
|
labels:
|
|
{{- include "ragflow.labels" . | nindent 4 }}
|
|
app.kubernetes.io/component: ragflow
|
|
spec:
|
|
selector:
|
|
{{- include "ragflow.selectorLabels" . | nindent 4 }}
|
|
app.kubernetes.io/component: ragflow
|
|
ports:
|
|
- protocol: TCP
|
|
port: 80
|
|
targetPort: http
|
|
name: http
|
|
type: {{ .Values.ragflow.service.type }}
|
|
---
|
|
{{- if .Values.ragflow.api.service.enabled }}
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: {{ .Release.Name }}-api
|
|
labels:
|
|
{{- include "ragflow.labels" . | nindent 4 }}
|
|
app.kubernetes.io/component: ragflow
|
|
spec:
|
|
selector:
|
|
{{- include "ragflow.selectorLabels" . | nindent 4 }}
|
|
app.kubernetes.io/component: ragflow
|
|
ports:
|
|
- protocol: TCP
|
|
port: 80
|
|
targetPort: http-api
|
|
name: http-api
|
|
type: {{ .Values.ragflow.api.service.type }}
|
|
{{- end }}
|