mirror of
https://github.com/rubenhensen/k8scd.git
synced 2026-09-17 02:12:55 +02:00
Add v4 whishper
This commit is contained in:
@@ -10,7 +10,7 @@ spec:
|
|||||||
source:
|
source:
|
||||||
repoURL: https://github.com/rubenhensen/k8scd.git
|
repoURL: https://github.com/rubenhensen/k8scd.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: whisper
|
path: whishper
|
||||||
destination:
|
destination:
|
||||||
server: https://kubernetes.default.svc
|
server: https://kubernetes.default.svc
|
||||||
namespace: whisper
|
namespace: whisper
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
DB_PASS: whishper
|
||||||
|
DB_USER: whishper
|
||||||
|
LT_LOAD_ONLY: es,en,fr,nl
|
||||||
|
WHISHPER_HOST: http://127.0.0.1:8082
|
||||||
|
WHISPER_MODELS: tiny,small,large-v3
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
io.kompose.service: mongo-env
|
||||||
|
name: env
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
io.kompose.service: mongo-claim0
|
||||||
|
name: mongo-claim0
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 100Mi
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
io.kompose.service: mongo-claim1
|
||||||
|
name: mongo-claim1
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 100Mi
|
||||||
@@ -0,0 +1,76 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
kompose.cmd: kompose convert
|
||||||
|
kompose.version: 1.34.0 (cbf2835db)
|
||||||
|
labels:
|
||||||
|
io.kompose.service: mongo
|
||||||
|
name: mongo
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
io.kompose.service: mongo
|
||||||
|
strategy:
|
||||||
|
type: Recreate
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
kompose.cmd: kompose convert
|
||||||
|
kompose.version: 1.34.0 (cbf2835db)
|
||||||
|
labels:
|
||||||
|
io.kompose.service: mongo
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- args:
|
||||||
|
- --logpath
|
||||||
|
- /var/log/mongodb/mongod.log
|
||||||
|
env:
|
||||||
|
- name: DB_PASS
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: DB_PASS
|
||||||
|
name: env
|
||||||
|
- name: DB_USER
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: DB_USER
|
||||||
|
name: env
|
||||||
|
- name: LT_LOAD_ONLY
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: LT_LOAD_ONLY
|
||||||
|
name: env
|
||||||
|
- name: MONGO_INITDB_ROOT_PASSWORD
|
||||||
|
value: whishper
|
||||||
|
- name: MONGO_INITDB_ROOT_USERNAME
|
||||||
|
value: whishper
|
||||||
|
- name: WHISHPER_HOST
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: WHISHPER_HOST
|
||||||
|
name: env
|
||||||
|
- name: WHISPER_MODELS
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: WHISPER_MODELS
|
||||||
|
name: env
|
||||||
|
image: mongo
|
||||||
|
name: mongo
|
||||||
|
ports:
|
||||||
|
- containerPort: 27017
|
||||||
|
protocol: TCP
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /data/db
|
||||||
|
name: mongo-claim0
|
||||||
|
- mountPath: /var/log/mongodb
|
||||||
|
name: mongo-claim1
|
||||||
|
restartPolicy: Always
|
||||||
|
volumes:
|
||||||
|
- name: mongo-claim0
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: mongo-claim0
|
||||||
|
- name: mongo-claim1
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: mongo-claim1
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
kompose.cmd: kompose convert
|
||||||
|
kompose.version: 1.34.0 (cbf2835db)
|
||||||
|
labels:
|
||||||
|
io.kompose.service: mongo
|
||||||
|
name: mongo
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- name: "27017"
|
||||||
|
port: 27017
|
||||||
|
targetPort: 27017
|
||||||
|
selector:
|
||||||
|
io.kompose.service: mongo
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
io.kompose.service: translate-claim0
|
||||||
|
name: translate-claim0
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 100Mi
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
io.kompose.service: translate-claim1
|
||||||
|
name: translate-claim1
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 100Mi
|
||||||
@@ -0,0 +1,81 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
kompose.cmd: kompose convert
|
||||||
|
kompose.version: 1.34.0 (cbf2835db)
|
||||||
|
labels:
|
||||||
|
io.kompose.service: translate
|
||||||
|
name: translate
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
io.kompose.service: translate
|
||||||
|
strategy:
|
||||||
|
type: Recreate
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
kompose.cmd: kompose convert
|
||||||
|
kompose.version: 1.34.0 (cbf2835db)
|
||||||
|
labels:
|
||||||
|
io.kompose.service: translate
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- env:
|
||||||
|
- name: DB_PASS
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: DB_PASS
|
||||||
|
name: env
|
||||||
|
- name: DB_USER
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: DB_USER
|
||||||
|
name: env
|
||||||
|
- name: LT_DISABLE_WEB_UI
|
||||||
|
value: "true"
|
||||||
|
- name: LT_LOAD_ONLY
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: LT_LOAD_ONLY
|
||||||
|
name: env
|
||||||
|
- name: LT_UPDATE_MODELS
|
||||||
|
value: "true"
|
||||||
|
- name: WHISHPER_HOST
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: WHISHPER_HOST
|
||||||
|
name: env
|
||||||
|
- name: WHISPER_MODELS
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: WHISPER_MODELS
|
||||||
|
name: env
|
||||||
|
image: libretranslate/libretranslate:latest
|
||||||
|
livenessProbe:
|
||||||
|
exec:
|
||||||
|
command:
|
||||||
|
- ./venv/bin/python scripts/healthcheck.py
|
||||||
|
failureThreshold: 5
|
||||||
|
periodSeconds: 2
|
||||||
|
timeoutSeconds: 3
|
||||||
|
name: whisper-libretranslate
|
||||||
|
ports:
|
||||||
|
- containerPort: 5000
|
||||||
|
protocol: TCP
|
||||||
|
tty: true
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /home/libretranslate/.local/share
|
||||||
|
name: translate-claim0
|
||||||
|
- mountPath: /home/libretranslate/.local/cache
|
||||||
|
name: translate-claim1
|
||||||
|
restartPolicy: Always
|
||||||
|
volumes:
|
||||||
|
- name: translate-claim0
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: translate-claim0
|
||||||
|
- name: translate-claim1
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: translate-claim1
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
kompose.cmd: kompose convert
|
||||||
|
kompose.version: 1.34.0 (cbf2835db)
|
||||||
|
labels:
|
||||||
|
io.kompose.service: translate
|
||||||
|
name: translate
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- name: "5000"
|
||||||
|
port: 5000
|
||||||
|
targetPort: 5000
|
||||||
|
selector:
|
||||||
|
io.kompose.service: translate
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
io.kompose.service: whishper-claim0
|
||||||
|
name: whishper-claim0
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 100Mi
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
io.kompose.service: whishper-claim1
|
||||||
|
name: whishper-claim1
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 100Mi
|
||||||
@@ -0,0 +1,81 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
kompose.cmd: kompose convert
|
||||||
|
kompose.version: 1.34.0 (cbf2835db)
|
||||||
|
labels:
|
||||||
|
io.kompose.service: whishper
|
||||||
|
name: whishper
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
io.kompose.service: whishper
|
||||||
|
strategy:
|
||||||
|
type: Recreate
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
kompose.cmd: kompose convert
|
||||||
|
kompose.version: 1.34.0 (cbf2835db)
|
||||||
|
labels:
|
||||||
|
io.kompose.service: whishper
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- env:
|
||||||
|
- name: CPU_THREADS
|
||||||
|
value: "4"
|
||||||
|
- name: DB_PASS
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: DB_PASS
|
||||||
|
name: env
|
||||||
|
- name: DB_USER
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: DB_USER
|
||||||
|
name: env
|
||||||
|
- name: LT_LOAD_ONLY
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: LT_LOAD_ONLY
|
||||||
|
name: env
|
||||||
|
- name: PUBLIC_API_HOST
|
||||||
|
- name: PUBLIC_INTERNAL_API_HOST
|
||||||
|
value: http://127.0.0.1:80
|
||||||
|
- name: PUBLIC_TRANSLATION_API_HOST
|
||||||
|
- name: PUBLIC_WHISHPER_PROFILE
|
||||||
|
value: cpu
|
||||||
|
- name: UPLOAD_DIR
|
||||||
|
value: /app/uploads
|
||||||
|
- name: WHISHPER_HOST
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: WHISHPER_HOST
|
||||||
|
name: env
|
||||||
|
- name: WHISPER_MODELS
|
||||||
|
valueFrom:
|
||||||
|
configMapKeyRef:
|
||||||
|
key: WHISPER_MODELS
|
||||||
|
name: env
|
||||||
|
- name: WHISPER_MODELS_DIR
|
||||||
|
value: /app/models
|
||||||
|
image: pluja/whishper:latest
|
||||||
|
name: whishper
|
||||||
|
ports:
|
||||||
|
- containerPort: 80
|
||||||
|
protocol: TCP
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /app/uploads
|
||||||
|
name: whishper-claim0
|
||||||
|
- mountPath: /var/log/whishper
|
||||||
|
name: whishper-claim1
|
||||||
|
restartPolicy: Always
|
||||||
|
volumes:
|
||||||
|
- name: whishper-claim0
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: whishper-claim0
|
||||||
|
- name: whishper-claim1
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: whishper-claim1
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: whisper-ingress
|
||||||
|
annotations:
|
||||||
|
# nginx.ingress.kubernetes.io/rewrite-target: /
|
||||||
|
cert-manager.io/cluster-issuer: prod-cluster-issuer
|
||||||
|
nginx.ingress.kubernetes.io/ssl-passthrough: "false"
|
||||||
|
nginx.ingress.kubernetes.io/enable-cors: "true"
|
||||||
|
# type of authentication
|
||||||
|
nginx.ingress.kubernetes.io/auth-type: basic
|
||||||
|
# name of the secret that contains the user/password definitions
|
||||||
|
nginx.ingress.kubernetes.io/auth-secret: whisper-basic-auth
|
||||||
|
# message to display with an appropriate context why the authentication is required
|
||||||
|
nginx.ingress.kubernetes.io/auth-realm: 'Authentication Required '
|
||||||
|
nginx.ingress.kubernetes.io/proxy-body-size: "0"
|
||||||
|
# nginx.ingress.kubernetes.io/cors-allow-origin: "http://localhost:3000/"
|
||||||
|
# nginx.ingress.kubernetes.io/cors-allow-methods: "PUT, GET, POST, OPTIONS, DELETE"
|
||||||
|
# If you encounter a redirect loop or are getting a 307 response code
|
||||||
|
# then you need to force the nginx ingress to connect to the backend using HTTPS.
|
||||||
|
#
|
||||||
|
# nginx.ingress.kubernetes.io/backend-protocol: "HTTP"
|
||||||
|
# namespace: ente-photos
|
||||||
|
spec:
|
||||||
|
ingressClassName: nginx
|
||||||
|
rules:
|
||||||
|
- host: alv.hensen.io
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: whishper
|
||||||
|
port:
|
||||||
|
number: 8082
|
||||||
|
|
||||||
|
# TLS configuration for HTTPS
|
||||||
|
tls:
|
||||||
|
# TLS secretName used on ClusterIssuer
|
||||||
|
- secretName: letsencrypt-prod
|
||||||
|
hosts:
|
||||||
|
- alv.hensen.io
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
kompose.cmd: kompose convert
|
||||||
|
kompose.version: 1.34.0 (cbf2835db)
|
||||||
|
labels:
|
||||||
|
io.kompose.service: whishper
|
||||||
|
name: whishper
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- name: "8082"
|
||||||
|
port: 8082
|
||||||
|
targetPort: 80
|
||||||
|
selector:
|
||||||
|
io.kompose.service: whishper
|
||||||
Reference in New Issue
Block a user