Files
home-docker/home-apps/searxng.yaml
T
2025-12-08 22:07:12 +11:00

139 lines
2.8 KiB
YAML

apiVersion: v1
kind: PersistentVolume
metadata:
name: searxng-nfs-pv
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
nfs:
server: 192.168.1.5
path: "/fs/1000/nfs/k8s/searxng"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
namespace: home-apps
name: searxng-nfs-pvc
spec:
accessModes:
- ReadWriteOnce
storageClassName: ""
resources:
requests:
storage: 10Gi
---
# About SearXNG is a free internet metasearch engine
# https://github.com/searxng/searxng
apiVersion: v1
kind: Service
metadata:
name: searxng
namespace: home-apps
spec:
ports:
- port: 8080
targetPort: 8080
selector:
app: searxng
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: searxng
spec:
revisionHistoryLimit: 2
selector:
matchLabels:
app: searxng
replicas: 1
template:
metadata:
labels:
app: searxng
spec:
containers:
- name: searxng
image: mirror.gcr.io/searxng/searxng:2025.2.20-28d1240fc
env:
- name: TZ
value: Australia/Melbourne
ports:
- containerPort: 8080
volumeMounts:
- name: config
mountPath: /etc/searxng
resources:
limits:
cpu: "2"
memory: "2Gi"
requests:
cpu: "0.5"
memory: "512Mi"
volumes:
- name: config
persistentVolumeClaim:
claimName: searxng-nfs-pvc
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: searxng-ingress
annotations:
kubernetes.io/ingress.class: "nginx"
kubernetes.io/tls-acme: "true"
cert-manager.io/cluster-issuer: "letsencrypt-prod"
nginx.ingress.kubernetes.io/proxy-body-size: 200m
nginx.ingress.kubernetes.io/whitelist-source-range: "192.168.1.0/24"
spec:
tls:
- hosts:
- sear.junv.cc
secretName: searxng-tls
rules:
- host: sear.junv.cc
http:
paths:
- backend:
service:
name: searxng
port:
number: 8080
path: /
pathType: Prefix
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: searxng-short-ingress
annotations:
kubernetes.io/ingress.class: "nginx"
kubernetes.io/tls-acme: "true"
cert-manager.io/cluster-issuer: "letsencrypt-prod"
nginx.ingress.kubernetes.io/proxy-body-size: 200m
nginx.ingress.kubernetes.io/auth-url: "https://pass.junv.cc/oauth2/auth"
nginx.ingress.kubernetes.io/auth-signin: "https://pass.junv.cc/oauth2/start?rd=https://$host$escaped_request_uri"
spec:
tls:
- hosts:
- s.junv.cc
secretName: s-tls
rules:
- host: s.junv.cc
http:
paths:
- backend:
service:
name: searxng
port:
number: 8080
path: /
pathType: Prefix