cluster-manifests/searxng/searxng.yaml

85 lines
1.7 KiB
YAML

apiVersion: v1
kind: Namespace
metadata:
name: searxng
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: searxng
namespace: searxng
spec:
replicas: 1
selector:
matchLabels:
app: searxng
template:
metadata:
labels:
app: searxng
spec:
containers:
- name: searxng
image: searxng/searxng:latest
imagePullPolicy: IfNotPresent
ports:
- containerPort: 8080
name: http
env:
# THE ANONYMITY BASE: Points SearXNG to your local LAN domain routing
- name: SEARXNG_BASE_URL
value: "https://needlestack.boo"
# SECURITY CRITICAL: Paste your unique openssl output string right here
- name: SEARXNG_SECRET_KEY
value: "0f73d2a5cb68e8ad5827d7584508c78276ebfcf391a9fb74deada8cc04fcaa71"
resources:
requests:
memory: "256Mi"
cpu: "100m"
limits:
memory: "512Mi"
cpu: "1"
---
apiVersion: v1
kind: Service
metadata:
name: searxng-service
namespace: searxng
spec:
ports:
- port: 80
protocol: TCP
targetPort: 8080
selector:
app: searxng
type: ClusterIP
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: searxng-local-ingress
namespace: searxng
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-production"
nginx.ingress.kubernetes.io/backend-protocol: "HTTP"
spec:
ingressClassName: nginx
tls:
- secretName: searxng-tls-secret
hosts:
- search.needlestack.boo
rules:
- host: search.needlestack.boo
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: searxng-service
port:
number: 80