mirror of
https://gitlab.durp.info/durfy/homelab/gitops.git
synced 2026-05-07 16:00:29 -05:00
add searxng
This commit is contained in:
parent
04b638b8f9
commit
a6437bb109
7 changed files with 206 additions and 0 deletions
27
dmz/searxng/Chart.yaml
Normal file
27
dmz/searxng/Chart.yaml
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: latest
|
||||||
|
description: SearXNG is a free internet metasearch engine which aggregates results from various search services and databases.
|
||||||
|
name: searxng
|
||||||
|
version: 1.0.1
|
||||||
|
kubeVersion: ">=1.16.0-0"
|
||||||
|
keywords:
|
||||||
|
- searx
|
||||||
|
- searxng
|
||||||
|
- search engine
|
||||||
|
- privacy
|
||||||
|
icon: https://github.com/searxng/searxng/blob/master/searx/static/themes/simple/img/favicon.png?raw=true
|
||||||
|
sources:
|
||||||
|
- https://github.com/searxng/searxng
|
||||||
|
- https://docs.searxng.org
|
||||||
|
- https://hub.docker.com/r/searxng/searxng
|
||||||
|
maintainers:
|
||||||
|
- name: unixfox
|
||||||
|
email: searxng@unixfoxremovemeifyouwanttocontactme.eu
|
||||||
|
dependencies:
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.4.2
|
||||||
|
- name: redis
|
||||||
|
version: 0.0.3
|
||||||
|
repository: https://charts.pascaliske.dev
|
||||||
|
condition: redis.enabled
|
||||||
1
dmz/searxng/templates/NOTES.txt
Normal file
1
dmz/searxng/templates/NOTES.txt
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
{{- include "common.notes.defaultNotes" . -}}
|
||||||
17
dmz/searxng/templates/common.yaml
Normal file
17
dmz/searxng/templates/common.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
{{/* First Make sure all variables are set and merged properly */}}
|
||||||
|
{{- include "common.values.setup" . }}
|
||||||
|
|
||||||
|
{{/* Append the configMap volume to the volumes */}}
|
||||||
|
{{- define "searxng.settingsVolume" -}}
|
||||||
|
enabled: "true"
|
||||||
|
mountPath: "/etc/searxng/settings.yml"
|
||||||
|
subPath: "settings.yml"
|
||||||
|
type: "custom"
|
||||||
|
volumeSpec:
|
||||||
|
secret:
|
||||||
|
secretName: {{ include "common.names.fullname" . }}-config
|
||||||
|
{{- end -}}
|
||||||
|
{{- $_ := set .Values.persistence "searxng-config" (include "searxng.settingsVolume" . | fromYaml) -}}
|
||||||
|
|
||||||
|
{{/* Render the templates */}}
|
||||||
|
{{ include "common.all" . }}
|
||||||
11
dmz/searxng/templates/configmap.yaml
Normal file
11
dmz/searxng/templates/configmap.yaml
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{{- include "common.values.setup" . -}}
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: {{ include "common.names.fullname" . }}-config
|
||||||
|
labels:
|
||||||
|
{{- include "common.labels" . | nindent 4 }}
|
||||||
|
data:
|
||||||
|
settings.yml: |-
|
||||||
|
{{ toYaml .Values.searxng.config | b64enc | indent 4 }}
|
||||||
45
dmz/searxng/templates/ingress.yaml
Normal file
45
dmz/searxng/templates/ingress.yaml
Normal file
|
|
@ -0,0 +1,45 @@
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: IngressRoute
|
||||||
|
metadata:
|
||||||
|
name: searxng-ingress
|
||||||
|
spec:
|
||||||
|
entryPoints:
|
||||||
|
- websecure
|
||||||
|
routes:
|
||||||
|
- match: Host(`searxng.durp.info`) && PathPrefix(`/`)
|
||||||
|
kind: Rule
|
||||||
|
middlewares:
|
||||||
|
- name: authentik-proxy-provider
|
||||||
|
namespace: traefik
|
||||||
|
services:
|
||||||
|
- name: searxng
|
||||||
|
port: 3000
|
||||||
|
tls:
|
||||||
|
secretName: searxng-tls
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: searxng-tls
|
||||||
|
spec:
|
||||||
|
secretName: searxng-tls
|
||||||
|
issuerRef:
|
||||||
|
name: letsencrypt-production
|
||||||
|
kind: ClusterIssuer
|
||||||
|
commonName: "searxng.durp.info"
|
||||||
|
dnsNames:
|
||||||
|
- "searxng.durp.info"
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
kind: Service
|
||||||
|
apiVersion: v1
|
||||||
|
metadata:
|
||||||
|
name: searxng-external-dns
|
||||||
|
annotations:
|
||||||
|
external-dns.alpha.kubernetes.io/hostname: searxng.durp.info
|
||||||
|
spec:
|
||||||
|
type: ExternalName
|
||||||
|
externalName: durp.info
|
||||||
83
dmz/searxng/values.yaml
Normal file
83
dmz/searxng/values.yaml
Normal file
|
|
@ -0,0 +1,83 @@
|
||||||
|
#
|
||||||
|
# IMPORTANT NOTE
|
||||||
|
#
|
||||||
|
# This chart inherits from our common library chart. You can check the default values/options here:
|
||||||
|
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
|
||||||
|
#
|
||||||
|
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: registry.durp.info/searxng/searxng
|
||||||
|
# -- image tag
|
||||||
|
tag: latest
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: Always
|
||||||
|
|
||||||
|
# Explanation about each environment variables here:
|
||||||
|
# https://docs.searxng.org/admin/installation-docker.html#command-line
|
||||||
|
env:
|
||||||
|
INSTANCE_NAME: "durp.info"
|
||||||
|
BASE_URL: "https://searx.durp.info"
|
||||||
|
AUTOCOMPLETE: "false"
|
||||||
|
# MORTY_URL: "http://morty:8080"
|
||||||
|
# MORTY_KEY: "mysecretkey"
|
||||||
|
# BIND_ADDRESS: "0.0.0.0:8080"
|
||||||
|
|
||||||
|
controller:
|
||||||
|
strategy: "RollingUpdate"
|
||||||
|
|
||||||
|
# -- Configures service settings for the chart.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
port: 8080
|
||||||
|
|
||||||
|
# -- Configure persistence settings for the chart under this key.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
persistence:
|
||||||
|
config:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
# -- Enable and configure ingress settings for the chart under this key.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
main:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
searxng:
|
||||||
|
config:
|
||||||
|
use_default_settings: true
|
||||||
|
#server:
|
||||||
|
# secret_key: pleasechangeme
|
||||||
|
# Uncomment when using the builtin rate limiter
|
||||||
|
# See https://docs.searxng.org/src/searx.plugins.limiter.html#limiter-plugin
|
||||||
|
# server.limiter: true
|
||||||
|
# redis.url: redis://@searxng-redis:6379/0
|
||||||
|
|
||||||
|
probes:
|
||||||
|
readiness:
|
||||||
|
custom: true
|
||||||
|
spec:
|
||||||
|
httpGet:
|
||||||
|
path: /healthz
|
||||||
|
port: 8080
|
||||||
|
liveness:
|
||||||
|
custom: true
|
||||||
|
spec:
|
||||||
|
httpGet:
|
||||||
|
path: /healthz
|
||||||
|
port: 8080
|
||||||
|
startup:
|
||||||
|
custom: true
|
||||||
|
spec:
|
||||||
|
httpGet:
|
||||||
|
path: /healthz
|
||||||
|
port: 8080
|
||||||
|
|
||||||
|
# Enable when using searxng builtin rate limiter
|
||||||
|
# Values: https://github.com/pascaliske/helm-charts/tree/master/charts/redis
|
||||||
|
redis:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
22
infra/argocd/templates/searxng.yaml
Normal file
22
infra/argocd/templates/searxng.yaml
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
apiVersion: argoproj.io/v1alpha1
|
||||||
|
kind: Application
|
||||||
|
metadata:
|
||||||
|
name: searxng
|
||||||
|
namespace: argocd
|
||||||
|
spec:
|
||||||
|
project: default
|
||||||
|
source:
|
||||||
|
repoURL: https://gitlab.com/developerdurp/homelab.git
|
||||||
|
targetRevision: main
|
||||||
|
path: dmz/searxng
|
||||||
|
directory:
|
||||||
|
recurse: true
|
||||||
|
destination:
|
||||||
|
name: dmz
|
||||||
|
namespace: searxng
|
||||||
|
syncPolicy:
|
||||||
|
automated:
|
||||||
|
prune: true
|
||||||
|
selfHeal: true
|
||||||
|
syncOptions:
|
||||||
|
- CreateNamespace=true
|
||||||
Loading…
Add table
Add a link
Reference in a new issue