Compare commits
71 Commits
7f83a3e526
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9d2e2cde20 | ||
|
|
3bed7c95eb | ||
|
|
3379af24f6 | ||
|
|
19c9a3a5ae | ||
|
|
b0d56f2102 | ||
|
|
8ea94c3b3d | ||
|
|
bdb13cb00a | ||
|
|
520c545ef4 | ||
|
|
cbf3f58285 | ||
|
|
9848eb1c1b | ||
|
|
f71ee10c63 | ||
|
|
6448963486 | ||
|
|
2aae7e8b7e | ||
|
|
6eefb0da8b | ||
|
|
4f8ed26d4d | ||
|
|
8dc36f24d9 | ||
|
|
6e4daf35ad | ||
|
|
92cf4bdb78 | ||
|
|
569895fb91 | ||
|
|
20a9c5b3bb | ||
|
|
f5aee6d900 | ||
|
|
99670aa277 | ||
|
|
9da3941cfc | ||
|
|
5daed5ebd4 | ||
|
|
17ac7ddd68 | ||
|
|
2a5133da48 | ||
|
|
4631aa1a5a | ||
|
|
e1a6a53c57 | ||
|
|
3efc060d0e | ||
|
|
3bdc7ecaa4 | ||
|
|
9fdc42a6a3 | ||
|
|
b910243e2f | ||
|
|
5520c55527 | ||
|
|
519959b991 | ||
|
|
c902ee862c | ||
|
|
f9588b0718 | ||
|
|
7a38ce1774 | ||
|
|
cc4a9a33cf | ||
|
|
49f4afa55e | ||
|
|
daabaabcb2 | ||
|
|
5647295120 | ||
|
|
f1efb3a801 | ||
|
|
a3b042b104 | ||
|
|
9bd2f3b8bc | ||
|
|
a71e5ac907 | ||
|
|
84ffea9d59 | ||
|
|
e4ad00b4f3 | ||
|
|
1ee0686020 | ||
|
|
0ae03ae994 | ||
|
|
0aa3744ba6 | ||
|
|
8e6c6f72e9 | ||
|
|
05e73b6832 | ||
|
|
581da487ed | ||
|
|
8ace260f87 | ||
|
|
0b9f88b7c0 | ||
|
|
209d0015c1 | ||
|
|
d329c20444 | ||
|
|
1641b9bea3 | ||
|
|
2b48963d54 | ||
|
|
b8f9370db8 | ||
|
|
6f36a51451 | ||
|
|
cf48328090 | ||
|
|
8b42195f1e | ||
|
|
9d8166d49c | ||
|
|
4e21b5e06f | ||
|
|
b04e96530d | ||
|
|
fc45280db8 | ||
|
|
aa1923da06 | ||
|
|
fc5f26533d | ||
|
|
83f1e5d98f | ||
|
|
6d913d015e |
1
argocd/apps/.gitignore
vendored
Normal file
1
argocd/apps/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
.idea
|
||||||
14
argocd/apps/cert-manager/include/mantisbt-cerficate.yaml
Normal file
14
argocd/apps/cert-manager/include/mantisbt-cerficate.yaml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: innovation-hub-niedersachsen.de-mantisbt
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
secretName: mantisbt-tls
|
||||||
|
commonName: 'mantisbt.innovation-hub-niedersachsen.de'
|
||||||
|
dnsNames:
|
||||||
|
- 'mantisbt.innovation-hub-niedersachsen.de'
|
||||||
|
issuerRef:
|
||||||
|
name: lets-encrypt
|
||||||
|
kind: ClusterIssuer
|
||||||
|
group: cert-manager.io
|
||||||
14
argocd/apps/cert-manager/include/mrknow-cerficate.yaml
Normal file
14
argocd/apps/cert-manager/include/mrknow-cerficate.yaml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: innovation-hub-niedersachsen.de-mrknow
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
secretName: mrknow-tls
|
||||||
|
commonName: 'mrknow.innovation-hub-niedersachsen.de'
|
||||||
|
dnsNames:
|
||||||
|
- 'mrknow.innovation-hub-niedersachsen.de'
|
||||||
|
issuerRef:
|
||||||
|
name: lets-encrypt
|
||||||
|
kind: ClusterIssuer
|
||||||
|
group: cert-manager.io
|
||||||
13
argocd/apps/cert-manager/include/rr-certificate.yaml
Normal file
13
argocd/apps/cert-manager/include/rr-certificate.yaml
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: rr-cert
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
secretName: rr-tls
|
||||||
|
issuerRef:
|
||||||
|
name: lets-encrypt
|
||||||
|
kind: ClusterIssuer
|
||||||
|
commonName: rr.innovation-hub-niedersachsen.de
|
||||||
|
dnsNames:
|
||||||
|
- rr.innovation-hub-niedersachsen.de
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
apiVersion: cert-manager.io/v1
|
|
||||||
kind: Certificate
|
|
||||||
metadata:
|
|
||||||
name: innovation-hub-niedersachsen.sws3
|
|
||||||
namespace: kube-system
|
|
||||||
spec:
|
|
||||||
secretName: sws3.innovation-hub-niedersachsen.de-tls
|
|
||||||
commonName: 'sws3.innovation-hub-niedersachsen.de'
|
|
||||||
dnsNames:
|
|
||||||
- 'sws3.innovation-hub-niedersachsen.de'
|
|
||||||
issuerRef:
|
|
||||||
name: lets-encrypt
|
|
||||||
kind: ClusterIssuer
|
|
||||||
group: cert-manager.io
|
|
||||||
14
argocd/apps/cert-manager/include/wekantest-cerficate.yaml
Normal file
14
argocd/apps/cert-manager/include/wekantest-cerficate.yaml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: innovation-hub-niedersachsen.de-wekantest
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
secretName: wekantest-tls
|
||||||
|
commonName: 'wekantest.innovation-hub-niedersachsen.de'
|
||||||
|
dnsNames:
|
||||||
|
- 'wekantest.innovation-hub-niedersachsen.de'
|
||||||
|
issuerRef:
|
||||||
|
name: lets-encrypt
|
||||||
|
kind: ClusterIssuer
|
||||||
|
group: cert-manager.io
|
||||||
42
argocd/apps/keycloak/values-keycloak.yaml
Normal file
42
argocd/apps/keycloak/values-keycloak.yaml
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: Middleware
|
||||||
|
metadata:
|
||||||
|
name: keycloak-headers
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
headers:
|
||||||
|
customRequestHeaders:
|
||||||
|
X-Forwarded-Proto: "https"
|
||||||
|
X-Forwarded-Port: "443"
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: IngressRoute
|
||||||
|
metadata:
|
||||||
|
name: keycloak
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
entryPoints:
|
||||||
|
- websecure
|
||||||
|
routes:
|
||||||
|
- match: Host(`keycloak.innovation-hub-niedersachsen.de`)
|
||||||
|
kind: Rule
|
||||||
|
middlewares:
|
||||||
|
- name: keycloak-headers
|
||||||
|
services:
|
||||||
|
- name: keycloak-external
|
||||||
|
port: 8080
|
||||||
|
tls:
|
||||||
|
secretName: keycloak-tls
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: keycloak-external
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
type: ExternalName
|
||||||
|
externalName: keycloak.innohub.local
|
||||||
|
ports:
|
||||||
|
- port: 8080
|
||||||
35
argocd/apps/mantisbt/config_inc.php
Normal file
35
argocd/apps/mantisbt/config_inc.php
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
<?php
|
||||||
|
$g_hostname = 'mantisbt-mariadb';
|
||||||
|
$g_db_type = 'mysqli';
|
||||||
|
$g_database_name = 'mantisbt';
|
||||||
|
$g_db_username = 'mantisbt';
|
||||||
|
$g_db_password = 'MantisDBPassword_2024!';
|
||||||
|
|
||||||
|
$g_default_timezone = 'Europe/Berlin';
|
||||||
|
|
||||||
|
$g_crypto_master_salt = 'shJaiK32W2tABdTZjwRUrZN+90AWLHXaLKiOt1Fwpaw=';
|
||||||
|
|
||||||
|
$g_path = 'https://mantisbt.innovation-hub-niedersachsen.de/';
|
||||||
|
|
||||||
|
# Email settings
|
||||||
|
$g_webmaster_email = 'inno-netz@zpd.polizei.niedersachsen.de';
|
||||||
|
$g_from_email = 'mantisbt@innovation-hub-niedersachsen.de';
|
||||||
|
$g_return_path_email = 'mantisbt@innovation-hub-niedersachsen.de';
|
||||||
|
$g_from_name = 'InnoHub MantisBT';
|
||||||
|
|
||||||
|
# SMTP Configuration
|
||||||
|
$g_phpMailer_method = PHPMAILER_METHOD_SMTP;
|
||||||
|
$g_smtp_host = '192.168.4.125';
|
||||||
|
$g_smtp_port = 25;
|
||||||
|
$g_enable_email_notification = ON;
|
||||||
|
|
||||||
|
# File upload - match PHP limit
|
||||||
|
$g_max_file_size = 2000000;
|
||||||
|
$g_allowed_files = 'png,gif,jpg,jpeg,pdf,doc,docx,xls,xlsx,ppt,pptx,txt,zip,rar,7z';
|
||||||
|
|
||||||
|
# Site settings
|
||||||
|
$g_window_title = 'InnoHub Bug Tracker';
|
||||||
|
$g_logo_image = 'images/mantis_logo.png';
|
||||||
|
|
||||||
|
# Security - disable after installation!
|
||||||
|
# $g_allow_signup = OFF;
|
||||||
91
argocd/apps/mantisbt/values-mantisbt.yaml
Normal file
91
argocd/apps/mantisbt/values-mantisbt.yaml
Normal file
@@ -0,0 +1,91 @@
|
|||||||
|
apiVersion: argoproj.io/v1alpha1
|
||||||
|
kind: Application
|
||||||
|
metadata:
|
||||||
|
name: mantisbt
|
||||||
|
namespace: argocd
|
||||||
|
finalizers:
|
||||||
|
- resources-finalizer.argocd.argoproj.io
|
||||||
|
spec:
|
||||||
|
project: default
|
||||||
|
source:
|
||||||
|
repoURL: 'https://gitea.innovation-hub-niedersachsen.de/innohub/charts/raw/main/mantisbt'
|
||||||
|
targetRevision: 0.4.*
|
||||||
|
chart: mantisbt
|
||||||
|
helm:
|
||||||
|
values: |
|
||||||
|
image:
|
||||||
|
repository: xlrl/mantisbt
|
||||||
|
tag: "latest"
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
enabled: true
|
||||||
|
className: traefik
|
||||||
|
annotations:
|
||||||
|
kubernetes.io/ingress.class: traefik
|
||||||
|
traefik.ingress.kubernetes.io/router.tls: "true"
|
||||||
|
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
||||||
|
cert-manager.io/cluster-issuer: lets-encrypt
|
||||||
|
hosts:
|
||||||
|
- mantisbt.innovation-hub-niedersachsen.de
|
||||||
|
tls:
|
||||||
|
- secretName: mantisbt-tls
|
||||||
|
hosts:
|
||||||
|
- mantisbt.innovation-hub-niedersachsen.de
|
||||||
|
|
||||||
|
mantisbt:
|
||||||
|
enableAdmin: "0"
|
||||||
|
timezone: "Europe/Berlin"
|
||||||
|
masterSalt: "shJaiK32W2tABdTZjwRUrZN+90AWLHXaLKiOt1Fwpaw="
|
||||||
|
|
||||||
|
persistence:
|
||||||
|
enabled: true
|
||||||
|
storageClass: longhorn
|
||||||
|
size: 10Gi
|
||||||
|
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
memory: 256Mi
|
||||||
|
cpu: 100m
|
||||||
|
limits:
|
||||||
|
memory: 512Mi
|
||||||
|
cpu: 500m
|
||||||
|
|
||||||
|
mariadb:
|
||||||
|
enabled: true
|
||||||
|
image:
|
||||||
|
tag: "latest"
|
||||||
|
auth:
|
||||||
|
database: mantisbt
|
||||||
|
username: mantisbt
|
||||||
|
password: "MantisDBPassword_2024!"
|
||||||
|
rootPassword: "RootDBPassword_2024!"
|
||||||
|
primary:
|
||||||
|
persistence:
|
||||||
|
enabled: true
|
||||||
|
storageClass: longhorn
|
||||||
|
size: 8Gi
|
||||||
|
livenessProbe:
|
||||||
|
enabled: true
|
||||||
|
initialDelaySeconds: 120
|
||||||
|
periodSeconds: 10
|
||||||
|
timeoutSeconds: 5
|
||||||
|
failureThreshold: 3
|
||||||
|
readinessProbe:
|
||||||
|
enabled: true
|
||||||
|
initialDelaySeconds: 30
|
||||||
|
periodSeconds: 10
|
||||||
|
timeoutSeconds: 5
|
||||||
|
failureThreshold: 3
|
||||||
|
|
||||||
|
destination:
|
||||||
|
server: 'https://kubernetes.default.svc'
|
||||||
|
namespace: mantisbt
|
||||||
|
syncPolicy:
|
||||||
|
managedNamespaceMetadata:
|
||||||
|
labels:
|
||||||
|
pod-security.kubernetes.io/enforce: "privileged"
|
||||||
|
automated:
|
||||||
|
selfHeal: true
|
||||||
|
prune: true
|
||||||
|
syncOptions:
|
||||||
|
- CreateNamespace=true
|
||||||
@@ -90,7 +90,7 @@ spec:
|
|||||||
secretName: mattermost-tls
|
secretName: mattermost-tls
|
||||||
annotations:
|
annotations:
|
||||||
kubernetes.io/ingress.class: traefik
|
kubernetes.io/ingress.class: traefik
|
||||||
cert-manager.io/cluster-issuer: lets-encrypt-staging
|
cert-manager.io/cluster-issuer: lets-encrypt
|
||||||
|
|
||||||
destination:
|
destination:
|
||||||
server: 'https://kubernetes.default.svc'
|
server: 'https://kubernetes.default.svc'
|
||||||
|
|||||||
165
argocd/apps/mrknow/traefik-mrknow.yaml
Normal file
165
argocd/apps/mrknow/traefik-mrknow.yaml
Normal file
@@ -0,0 +1,165 @@
|
|||||||
|
# =============================================================================
|
||||||
|
# Traefik IngressRoute Konfiguration für MR.KNOW / BPM Inspire
|
||||||
|
# =============================================================================
|
||||||
|
# Anpassen:
|
||||||
|
# - Host: mrknow.innovation-hub-niedersachsen.de (oder gewünschte Domain)
|
||||||
|
# - externalName: IP/Hostname des Portainer/Docker Hosts
|
||||||
|
# - secretName: TLS-Zertifikat Secret
|
||||||
|
# =============================================================================
|
||||||
|
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: Middleware
|
||||||
|
metadata:
|
||||||
|
name: mrknow-headers
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
headers:
|
||||||
|
customRequestHeaders:
|
||||||
|
X-Forwarded-Proto: "https"
|
||||||
|
X-Forwarded-Port: "443"
|
||||||
|
|
||||||
|
---
|
||||||
|
# =============================================================================
|
||||||
|
# IngressRoute für InForm (Frontend / Root-Pfad)
|
||||||
|
# =============================================================================
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: IngressRoute
|
||||||
|
metadata:
|
||||||
|
name: mrknow-inform
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
entryPoints:
|
||||||
|
- websecure
|
||||||
|
routes:
|
||||||
|
- match: Host(`mrknow.innovation-hub-niedersachsen.de`) && !PathPrefix(`/insign`) && !PathPrefix(`/inspire`) && !PathPrefix(`/pgadmin`)
|
||||||
|
kind: Rule
|
||||||
|
middlewares:
|
||||||
|
- name: mrknow-headers
|
||||||
|
services:
|
||||||
|
- name: mrknow-inform-external
|
||||||
|
port: 8080
|
||||||
|
tls:
|
||||||
|
secretName: mrknow-tls
|
||||||
|
|
||||||
|
---
|
||||||
|
# =============================================================================
|
||||||
|
# IngressRoute für InSign
|
||||||
|
# =============================================================================
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: IngressRoute
|
||||||
|
metadata:
|
||||||
|
name: mrknow-insign
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
entryPoints:
|
||||||
|
- websecure
|
||||||
|
routes:
|
||||||
|
- match: Host(`mrknow.innovation-hub-niedersachsen.de`) && PathPrefix(`/insign`)
|
||||||
|
kind: Rule
|
||||||
|
middlewares:
|
||||||
|
- name: mrknow-headers
|
||||||
|
services:
|
||||||
|
- name: mrknow-insign-external
|
||||||
|
port: 8081
|
||||||
|
tls:
|
||||||
|
secretName: mrknow-tls
|
||||||
|
|
||||||
|
---
|
||||||
|
# =============================================================================
|
||||||
|
# IngressRoute für InSpire
|
||||||
|
# =============================================================================
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: IngressRoute
|
||||||
|
metadata:
|
||||||
|
name: mrknow-inspire
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
entryPoints:
|
||||||
|
- websecure
|
||||||
|
routes:
|
||||||
|
- match: Host(`mrknow.innovation-hub-niedersachsen.de`) && PathPrefix(`/inspire`)
|
||||||
|
kind: Rule
|
||||||
|
middlewares:
|
||||||
|
- name: mrknow-headers
|
||||||
|
services:
|
||||||
|
- name: mrknow-inspire-external
|
||||||
|
port: 8082
|
||||||
|
tls:
|
||||||
|
secretName: mrknow-tls
|
||||||
|
|
||||||
|
# ---
|
||||||
|
# =============================================================================
|
||||||
|
# IngressRoute für PgAdmin (optional)
|
||||||
|
# =============================================================================
|
||||||
|
# apiVersion: traefik.io/v1alpha1
|
||||||
|
# kind: IngressRoute
|
||||||
|
# metadata:
|
||||||
|
# name: mrknow-pgadmin
|
||||||
|
# namespace: kube-system
|
||||||
|
# spec:
|
||||||
|
# entryPoints:
|
||||||
|
# - websecure
|
||||||
|
# routes:
|
||||||
|
# - match: Host(`mrknow.innovation-hub-niedersachsen.de`) && PathPrefix(`/pgadmin`)
|
||||||
|
# kind: Rule
|
||||||
|
# middlewares:
|
||||||
|
# - name: mrknow-headers
|
||||||
|
# services:
|
||||||
|
# - name: mrknow-pgadmin-external
|
||||||
|
# port: 5050
|
||||||
|
# tls:
|
||||||
|
# secretName: mrknow-tls
|
||||||
|
|
||||||
|
---
|
||||||
|
# =============================================================================
|
||||||
|
# External Services - Verbindung zum Portainer/Docker Host
|
||||||
|
# =============================================================================
|
||||||
|
# WICHTIG: externalName auf den Hostnamen/IP deines Docker-Hosts anpassen!
|
||||||
|
# =============================================================================
|
||||||
|
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: mrknow-inform-external
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
type: ExternalName
|
||||||
|
externalName: mrknow.innohub.local
|
||||||
|
ports:
|
||||||
|
- port: 8080
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: mrknow-insign-external
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
type: ExternalName
|
||||||
|
externalName: mrknow.innohub.local
|
||||||
|
ports:
|
||||||
|
- port: 8081
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: mrknow-inspire-external
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
type: ExternalName
|
||||||
|
externalName: mrknow.innohub.local
|
||||||
|
ports:
|
||||||
|
- port: 8082
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: mrknow-pgadmin-external
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
type: ExternalName
|
||||||
|
externalName: mrknow.innohub.local
|
||||||
|
ports:
|
||||||
|
- port: 5050
|
||||||
@@ -34,7 +34,6 @@ spec:
|
|||||||
# PostgreSQL Datenbank
|
# PostgreSQL Datenbank
|
||||||
db:
|
db:
|
||||||
type: "postgresdb"
|
type: "postgresdb"
|
||||||
|
|
||||||
postgresql:
|
postgresql:
|
||||||
enabled: true
|
enabled: true
|
||||||
primary:
|
primary:
|
||||||
@@ -48,11 +47,14 @@ spec:
|
|||||||
auth:
|
auth:
|
||||||
username: "n8n"
|
username: "n8n"
|
||||||
password: "n8n"
|
password: "n8n"
|
||||||
|
postgresPassword: "35PuQG99qi"
|
||||||
database: "n8n"
|
database: "n8n"
|
||||||
|
|
||||||
# MinIO für Binary Data
|
# MinIO für Binary Data
|
||||||
minio:
|
minio:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
rootUser: "vkYCY4YJsFv11E18az7o"
|
||||||
|
rootPassword: "gOVBJMs5qxABhReVQwe3M43mfS8RsejUJSKOWr5N"
|
||||||
persistence:
|
persistence:
|
||||||
enabled: true
|
enabled: true
|
||||||
storageClass: "longhorn"
|
storageClass: "longhorn"
|
||||||
@@ -63,6 +65,8 @@ spec:
|
|||||||
# Redis für Queue Mode
|
# Redis für Queue Mode
|
||||||
redis:
|
redis:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
auth:
|
||||||
|
password: "y8GBnBTleK"
|
||||||
master:
|
master:
|
||||||
persistence:
|
persistence:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|||||||
@@ -85,6 +85,7 @@ spec:
|
|||||||
enabled: true
|
enabled: true
|
||||||
auth:
|
auth:
|
||||||
password: redisInnoDBUser
|
password: redisInnoDBUser
|
||||||
|
# architecture: standalone
|
||||||
master:
|
master:
|
||||||
extraEnvVars:
|
extraEnvVars:
|
||||||
- name: REDIS_MASTER_HOST
|
- name: REDIS_MASTER_HOST
|
||||||
@@ -92,15 +93,15 @@ spec:
|
|||||||
- name: REDIS_MASTER_PORT_NUMBER
|
- name: REDIS_MASTER_PORT_NUMBER
|
||||||
value: "6379"
|
value: "6379"
|
||||||
readinessProbe:
|
readinessProbe:
|
||||||
timeoutSeconds: 10
|
timeoutSeconds: 20
|
||||||
replica:
|
replica:
|
||||||
extraEnvVars:
|
extraEnvVars:
|
||||||
- name: REDIS_MASTER_HOST
|
- name: REDIS_MASTER_HOST
|
||||||
value: "nextcloud-redis-master"
|
value: "nextcloud-redis-master"
|
||||||
- name: REDIS_MASTER_PORT_NUMBER
|
- name: REDIS_MASTER_PORT_NUMBER
|
||||||
value: "6379"
|
value: "6379"
|
||||||
readinessProbe:
|
readinessProbe:
|
||||||
timeoutSeconds: 10
|
timeoutSeconds: 20
|
||||||
|
|
||||||
postgresql:
|
postgresql:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|||||||
@@ -1,57 +0,0 @@
|
|||||||
apiVersion: argoproj.io/v1alpha1
|
|
||||||
kind: Application
|
|
||||||
metadata:
|
|
||||||
name: open-webui
|
|
||||||
finalizers:
|
|
||||||
- resources-finalizer.argocd.argoproj.io
|
|
||||||
spec:
|
|
||||||
project: default
|
|
||||||
source:
|
|
||||||
repoURL: 'https://helm.openwebui.com/'
|
|
||||||
targetRevision: 8.*.*
|
|
||||||
helm:
|
|
||||||
parameters:
|
|
||||||
- name: serviceAccount.enable
|
|
||||||
value: 'false'
|
|
||||||
- name: persistence.size
|
|
||||||
value: 200Gi
|
|
||||||
- name: existingClaim
|
|
||||||
value: "open-webui"
|
|
||||||
- name: ollama.enabled
|
|
||||||
value: 'false'
|
|
||||||
# - name: ollama.persistentVolume.enabled
|
|
||||||
# value: 'true'
|
|
||||||
# - name: ollama.persistence.existingClaim
|
|
||||||
# value: "open-webui-llm-storage"
|
|
||||||
# - name: ollama.persistenceVolume.size
|
|
||||||
# value: 200Gi
|
|
||||||
- name: ingress.class
|
|
||||||
value: 'traefik'
|
|
||||||
- name: ingress.enabled
|
|
||||||
value: 'true'
|
|
||||||
- name: ingress.host
|
|
||||||
value: "innollm.innovation-hub-niedersachsen.de"
|
|
||||||
- name: ingress.tls
|
|
||||||
value: 'true'
|
|
||||||
- name: ingress.existingSecret
|
|
||||||
value: 'innollm-tls'
|
|
||||||
- name: ingress.annotations.kubernetes\.io\/ingress\.class
|
|
||||||
value: traefik
|
|
||||||
- name: ingress.annotations.traefik\.ingress\.kubernetes\.io\/router\.tls
|
|
||||||
value: 'true'
|
|
||||||
forceString: true
|
|
||||||
- name: ingress.annotations.cert-manager\.io\/cluster-issuer
|
|
||||||
value: lets-encrypt
|
|
||||||
chart: open-webui
|
|
||||||
destination:
|
|
||||||
server: 'https://kubernetes.default.svc'
|
|
||||||
namespace: open-webui
|
|
||||||
syncPolicy:
|
|
||||||
managedNamespaceMetadata:
|
|
||||||
labels:
|
|
||||||
pod-security.kubernetes.io/enforce: 'privileged'
|
|
||||||
automated:
|
|
||||||
selfHeal: true
|
|
||||||
prune: true
|
|
||||||
syncOptions:
|
|
||||||
- CreateNamespace=true
|
|
||||||
72
argocd/apps/open-webui/values-openwebui.yaml
Normal file
72
argocd/apps/open-webui/values-openwebui.yaml
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
apiVersion: argoproj.io/v1alpha1
|
||||||
|
kind: Application
|
||||||
|
metadata:
|
||||||
|
name: open-webui
|
||||||
|
finalizers:
|
||||||
|
- resources-finalizer.argocd.argoproj.io
|
||||||
|
spec:
|
||||||
|
project: default
|
||||||
|
source:
|
||||||
|
repoURL: 'https://helm.openwebui.com/'
|
||||||
|
targetRevision: 9.*.*
|
||||||
|
chart: open-webui
|
||||||
|
helm:
|
||||||
|
values: |
|
||||||
|
serviceAccount:
|
||||||
|
enable: false
|
||||||
|
|
||||||
|
persistence:
|
||||||
|
size: 200Gi
|
||||||
|
storageClass: longhorn
|
||||||
|
|
||||||
|
ollama:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
extraEnvVars:
|
||||||
|
- name: OAUTH_LOGOUT_REDIRECT_URL
|
||||||
|
value: "https://innollm.innovation-hub-niedersachsen.de/"
|
||||||
|
- name: ENABLE_OAUTH_LOGOUT
|
||||||
|
value: "true"
|
||||||
|
- name: WEBUI_SECRET_KEY
|
||||||
|
value: "17e027e793724fcbf0400c91374d6960f1beec64b52939c4ee20c1b6faf859ad"
|
||||||
|
- name: CORS_ALLOW_ORIGIN
|
||||||
|
value: "https://innollm.innovation-hub-niedersachsen.de"
|
||||||
|
- name: USER_AGENT
|
||||||
|
value: "Open-WebUI/InnoHub"
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
enabled: true
|
||||||
|
class: traefik
|
||||||
|
host: "innollm.innovation-hub-niedersachsen.de"
|
||||||
|
tls: true
|
||||||
|
existingSecret: "innollm-tls"
|
||||||
|
annotations:
|
||||||
|
kubernetes.io/ingress.class: traefik
|
||||||
|
traefik.ingress.kubernetes.io/router.tls: "true"
|
||||||
|
cert-manager.io/cluster-issuer: lets-encrypt
|
||||||
|
|
||||||
|
sso:
|
||||||
|
enabled: true
|
||||||
|
enableSignup: true
|
||||||
|
mergeAccountsByEmail: false
|
||||||
|
enableRoleManagement: false
|
||||||
|
enableGroupManagement: false
|
||||||
|
oidc:
|
||||||
|
enabled: true
|
||||||
|
clientId: "open-webui"
|
||||||
|
clientSecret: "RFkQ5RDXv6KE4DiQsOq3BJejWFElu90G"
|
||||||
|
providerUrl: "https://keycloak.innovation-hub-niedersachsen.de/realms/innohub/.well-known/openid-configuration"
|
||||||
|
providerName: "Keycloak"
|
||||||
|
|
||||||
|
destination:
|
||||||
|
server: 'https://kubernetes.default.svc'
|
||||||
|
namespace: open-webui
|
||||||
|
syncPolicy:
|
||||||
|
managedNamespaceMetadata:
|
||||||
|
labels:
|
||||||
|
pod-security.kubernetes.io/enforce: 'privileged'
|
||||||
|
automated:
|
||||||
|
selfHeal: true
|
||||||
|
prune: true
|
||||||
|
syncOptions:
|
||||||
|
- CreateNamespace=true
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
#apiVersion: v1
|
|
||||||
#kind: Namespace
|
|
||||||
#metadata:
|
|
||||||
# name: openproject
|
|
||||||
# labels:
|
|
||||||
# pod-security.kubernetes.io/enforce: privileged
|
|
||||||
# pod-security.kubernetes.io/audit: privileged
|
|
||||||
# pod-security.kubernetes.io/warn: privileged
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
#apiVersion: v1
|
|
||||||
#kind: Secret
|
|
||||||
#metadata:
|
|
||||||
# name: postgresql-auth
|
|
||||||
# namespace: openproject
|
|
||||||
#type: Opaque
|
|
||||||
#stringData:
|
|
||||||
# postgres-password: InnoPG2025
|
|
||||||
# password: InnoDB2025
|
|
||||||
@@ -1,126 +0,0 @@
|
|||||||
#apiVersion: argoproj.io/v1alpha1
|
|
||||||
#kind: Application
|
|
||||||
#metadata:
|
|
||||||
# name: openproject
|
|
||||||
# finalizers:
|
|
||||||
# - resources-finalizer.argocd.argoproj.io
|
|
||||||
#spec:
|
|
||||||
# project: default
|
|
||||||
# source:
|
|
||||||
# repoURL: 'https://charts.openproject.org'
|
|
||||||
# chart: openproject
|
|
||||||
# targetRevision: 11.*.*
|
|
||||||
# helm:
|
|
||||||
# values: |
|
|
||||||
# develop: false
|
|
||||||
#
|
|
||||||
# environment:
|
|
||||||
# EMAIL_DELIVERY_METHOD: "smtp"
|
|
||||||
# SMTP_ADDRESS: "smtp.innohub.local"
|
|
||||||
# SMTP_PORT: "25"
|
|
||||||
# SMTP_DOMAIN: "innovation-hub-niedersachsen.de"
|
|
||||||
# SMTP_AUTHENTICATION: "none"
|
|
||||||
# SMTP_ENABLE_STARTTLS_AUTO: "false"
|
|
||||||
#
|
|
||||||
# cron:
|
|
||||||
# enabled: false
|
|
||||||
# environment:
|
|
||||||
# IMAP_HOST: "smtp.innovation-hub-niedersachsen.de"
|
|
||||||
# IMAP_PORT: 993
|
|
||||||
# IMAP_SSL: "true"
|
|
||||||
# IMAP_USERNAME: "openproject"
|
|
||||||
# IMAP_PASSWORD: "openproject-imap-password"
|
|
||||||
# schedule: "*/5 * * * *"
|
|
||||||
# ingress:
|
|
||||||
# enabled: true
|
|
||||||
# ingressClassName: traefik
|
|
||||||
# annotations:
|
|
||||||
# kubernetes.io/ingress.class: traefik
|
|
||||||
# traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
|
||||||
# traefik.ingress.kubernetes.io/router.tls: "true"
|
|
||||||
# cert-manager.io/cluster-issuer: lets-encrypt
|
|
||||||
# host: "openproject.innovation-hub-niedersachsen.de"
|
|
||||||
# path: /
|
|
||||||
# pathType: "Prefix"
|
|
||||||
# tls:
|
|
||||||
# enabled: true
|
|
||||||
# secretName: openproject-tls
|
|
||||||
#
|
|
||||||
# openproject:
|
|
||||||
# https: true
|
|
||||||
# hsts: true
|
|
||||||
# seed_locale: "de"
|
|
||||||
# useTmpVolumes: "false"
|
|
||||||
# admin_user:
|
|
||||||
# password: "admin"
|
|
||||||
# password_reset: true
|
|
||||||
# name: "OpenProject Admin"
|
|
||||||
# mail: "inno-netz@zpd.polizei.niedersachsen.de"
|
|
||||||
#
|
|
||||||
# resources:
|
|
||||||
# requests:
|
|
||||||
# memory: "1Gi"
|
|
||||||
# limits:
|
|
||||||
# memory: "2Gi"
|
|
||||||
#
|
|
||||||
# appInit:
|
|
||||||
# resources:
|
|
||||||
# requests:
|
|
||||||
# memory: "512Mi"
|
|
||||||
# limits:
|
|
||||||
# memory: "1Gi"
|
|
||||||
#
|
|
||||||
# memcached:
|
|
||||||
# global:
|
|
||||||
# readOnlyRootFilesystem: false
|
|
||||||
#
|
|
||||||
# containerSecurityContext:
|
|
||||||
# readOnlyRootFilesystem: false
|
|
||||||
#
|
|
||||||
# persistence:
|
|
||||||
# enabled: false
|
|
||||||
# accessModes:
|
|
||||||
# - "ReadWriteOnce"
|
|
||||||
#
|
|
||||||
# s3:
|
|
||||||
# enabled: true
|
|
||||||
# auth:
|
|
||||||
# accessKeyId: "K7mNpQ2vRxL9wYtH3Zc8"
|
|
||||||
# secretAccessKey: "jX9fK2mP5nQ8rT1vW4yZ7bN0cM3hL6gF9dS2aE5k"
|
|
||||||
# host: "sws3.innovation-hub-niedersachsen.de"
|
|
||||||
# port: 443
|
|
||||||
# bucketName: "openproject"
|
|
||||||
# region: "eu-central-1"
|
|
||||||
#
|
|
||||||
# postgresql:
|
|
||||||
# bundled: true
|
|
||||||
# auth:
|
|
||||||
# existingSecret: "postgresql-auth"
|
|
||||||
# username: "openproject"
|
|
||||||
# # password: "openproject123"
|
|
||||||
# # postgresPassword: "postgres123"
|
|
||||||
# database: "openproject"
|
|
||||||
# global:
|
|
||||||
# readOnlyRootFilesystem: false
|
|
||||||
# primary:
|
|
||||||
# persistence:
|
|
||||||
# enabled: true
|
|
||||||
# size: 8Gi
|
|
||||||
# service:
|
|
||||||
# type: ClusterIP
|
|
||||||
# ports:
|
|
||||||
# postgresql: 5432
|
|
||||||
#
|
|
||||||
# destination:
|
|
||||||
# server: 'https://kubernetes.default.svc'
|
|
||||||
# namespace: openproject
|
|
||||||
#
|
|
||||||
# syncPolicy:
|
|
||||||
# managedNamespaceMetadata:
|
|
||||||
# labels:
|
|
||||||
# pod-security.kubernetes.io/enforce: "privileged"
|
|
||||||
# automated:
|
|
||||||
# selfHeal: true
|
|
||||||
# prune: true
|
|
||||||
# syncOptions:
|
|
||||||
# - CreateNamespace=true
|
|
||||||
@@ -1,46 +1,46 @@
|
|||||||
apiVersion: v1
|
#apiVersion: v1
|
||||||
kind: Secret
|
#kind: Secret
|
||||||
type: Opaque
|
#type: Opaque
|
||||||
metadata:
|
#metadata:
|
||||||
name: admin-s3-secret
|
# name: admin-s3-secret
|
||||||
namespace: seaweedfs
|
# namespace: seaweedfs
|
||||||
labels:
|
# labels:
|
||||||
app.kubernetes.io/name: seaweedfs
|
# app.kubernetes.io/name: seaweedfs
|
||||||
app.kubernetes.io/component: seaweedfs-s3
|
# app.kubernetes.io/component: seaweedfs-s3
|
||||||
|
#
|
||||||
stringData:
|
#stringData:
|
||||||
seaweedfs_s3_config: |
|
# seaweedfs_s3_config: |
|
||||||
{
|
# {
|
||||||
"identities": [
|
# "identities": [
|
||||||
{
|
# {
|
||||||
"name": "tatort",
|
# "name": "tatort",
|
||||||
"credentials": [
|
# "credentials": [
|
||||||
{
|
# {
|
||||||
"accessKey": "wjpKrmaqXra99rX3D61H",
|
# "accessKey": "wjpKrmaqXra99rX3D61H",
|
||||||
"secretKey": "fTPi0u0FR6Lv9Y9IKydWv6WM0EA5XrsK008HCt9u"
|
# "secretKey": "fTPi0u0FR6Lv9Y9IKydWv6WM0EA5XrsK008HCt9u"
|
||||||
}
|
# }
|
||||||
],
|
# ],
|
||||||
"actions": ["Read", "Write", "Admin"]
|
# "actions": ["Read", "Write", "Admin"]
|
||||||
},
|
# },
|
||||||
{
|
# {
|
||||||
"name": "plane",
|
# "name": "plane",
|
||||||
"credentials": [
|
# "credentials": [
|
||||||
{
|
# {
|
||||||
"accessKey": "a0ccb47cc0994bf51ecd",
|
# "accessKey": "a0ccb47cc0994bf51ecd",
|
||||||
"secretKey": "0d54ee2f943f2a56b8cafc3afe9cb1e2f9fecac2"
|
# "secretKey": "0d54ee2f943f2a56b8cafc3afe9cb1e2f9fecac2"
|
||||||
}
|
# }
|
||||||
],
|
# ],
|
||||||
"actions": ["Read", "Write", "Admin"]
|
# "actions": ["Read", "Write", "Admin"]
|
||||||
},
|
# },
|
||||||
{
|
# {
|
||||||
"name": "n8n",
|
# "name": "n8n",
|
||||||
"credentials": [
|
# "credentials": [
|
||||||
{
|
# {
|
||||||
"accessKey": "WPpTwIoSMgrPChsS3rdS",
|
# "accessKey": "WPpTwIoSMgrPChsS3rdS",
|
||||||
"secretKey": "C59o3EAhsUKBWj1oiPtiYRq3GhLMFeYDeiMxJ4SW"
|
# "secretKey": "C59o3EAhsUKBWj1oiPtiYRq3GhLMFeYDeiMxJ4SW"
|
||||||
}
|
# }
|
||||||
],
|
# ],
|
||||||
"actions": ["Read", "Write", "Admin"]
|
# "actions": ["Read", "Write", "Admin"]
|
||||||
}
|
# }
|
||||||
]
|
# ]
|
||||||
}
|
# }
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
apiVersion: v1
|
#apiVersion: v1
|
||||||
kind: Secret
|
#kind: Secret
|
||||||
metadata:
|
#metadata:
|
||||||
name: seaweedfs-jwt
|
# name: seaweedfs-jwt
|
||||||
namespace: seaweedfs
|
# namespace: seaweedfs
|
||||||
stringData:
|
#stringData:
|
||||||
jwt.json: |
|
# jwt.json: |
|
||||||
{
|
# {
|
||||||
"secret": "inno-super-secret-key"
|
# "secret": "inno-super-secret-key"
|
||||||
}
|
# }
|
||||||
|
|||||||
@@ -1,108 +1,108 @@
|
|||||||
apiVersion: argoproj.io/v1alpha1
|
#apiVersion: argoproj.io/v1alpha1
|
||||||
kind: Application
|
#kind: Application
|
||||||
metadata:
|
#metadata:
|
||||||
name: seaweedfs
|
# name: seaweedfs
|
||||||
finalizers:
|
# finalizers:
|
||||||
- resources-finalizer.argocd.argoproj.io
|
# - resources-finalizer.argocd.argoproj.io
|
||||||
spec:
|
#spec:
|
||||||
project: default
|
# project: default
|
||||||
source:
|
# source:
|
||||||
repoURL: "https://seaweedfs.github.io/seaweedfs/helm"
|
# repoURL: "https://seaweedfs.github.io/seaweedfs/helm"
|
||||||
chart: seaweedfs
|
# chart: seaweedfs
|
||||||
targetRevision: "4.*.*"
|
# targetRevision: "4.*.*"
|
||||||
helm:
|
# helm:
|
||||||
values: |
|
# values: |
|
||||||
global:
|
# global:
|
||||||
extraEnvironmentVars:
|
# extraEnvironmentVars:
|
||||||
WEED_CLUSTER_DEFAULT: "sw"
|
# WEED_CLUSTER_DEFAULT: "sw"
|
||||||
WEED_CLUSTER_SW_MASTER: "seaweedfs-master.seaweedfs:9333"
|
# WEED_CLUSTER_SW_MASTER: "seaweedfs-master.seaweedfs:9333"
|
||||||
WEED_CLUSTER_SW_FILER: "seaweedfs-filer.seaweedfs:8888"
|
# WEED_CLUSTER_SW_FILER: "seaweedfs-filer.seaweedfs:8888"
|
||||||
|
#
|
||||||
master:
|
# master:
|
||||||
enabled: true
|
# enabled: true
|
||||||
replicas: 1
|
# replicas: 1
|
||||||
data:
|
# data:
|
||||||
type: existingClaim
|
# type: existingClaim
|
||||||
claimName: seaweedfs-master-data-longhorn
|
# claimName: seaweedfs-master-data-longhorn
|
||||||
|
#
|
||||||
volume:
|
# volume:
|
||||||
enabled: true
|
# enabled: true
|
||||||
replicas: 1
|
# replicas: 1
|
||||||
dataDirs:
|
# dataDirs:
|
||||||
- name: data1
|
# - name: data1
|
||||||
type: existingClaim
|
# type: existingClaim
|
||||||
claimName: seaweedfs-volume-data-longhorn
|
# claimName: seaweedfs-volume-data-longhorn
|
||||||
maxVolumes: 0
|
# maxVolumes: 0
|
||||||
idx:
|
# idx:
|
||||||
type: existingClaim
|
# type: existingClaim
|
||||||
claimName: seaweedfs-volume-idx-longhorn
|
# claimName: seaweedfs-volume-idx-longhorn
|
||||||
|
#
|
||||||
filer:
|
# filer:
|
||||||
enabled: true
|
# enabled: true
|
||||||
replicas: 1
|
# replicas: 1
|
||||||
data:
|
# data:
|
||||||
type: existingClaim
|
# type: existingClaim
|
||||||
claimName: seaweedfs-filer-data-longhorn
|
# claimName: seaweedfs-filer-data-longhorn
|
||||||
# s3:
|
# # s3:
|
||||||
# enabled: false
|
# # enabled: false
|
||||||
# port: 8333
|
# # port: 8333
|
||||||
# domainName: "sws3.innovation-hub-niedersachsen.de"
|
# # domainName: "sws3.innovation-hub-niedersachsen.de"
|
||||||
# allowEmptyFolder: true
|
# # allowEmptyFolder: true
|
||||||
# enableAuth: true
|
# # enableAuth: true
|
||||||
# allowDeleteBucketNotEmpty: true
|
# # allowDeleteBucketNotEmpty: true
|
||||||
|
#
|
||||||
s3:
|
# s3:
|
||||||
enabled: true
|
# enabled: true
|
||||||
replicas: 1
|
# replicas: 1
|
||||||
port: 8333
|
# port: 8333
|
||||||
enableAuth: true
|
# enableAuth: true
|
||||||
existingConfigSecret: admin-s3-secret
|
# existingConfigSecret: admin-s3-secret
|
||||||
existingConfigSecretKey: seaweedfs_s3_config
|
# existingConfigSecretKey: seaweedfs_s3_config
|
||||||
|
#
|
||||||
extraEnvironmentVars:
|
# extraEnvironmentVars:
|
||||||
WEED_S3_ALLOWED_ORIGINS: "*"
|
# WEED_S3_ALLOWED_ORIGINS: "*"
|
||||||
WEED_FILER: "seaweedfs-filer.seaweedfs.svc.cluster.local:8888"
|
# WEED_FILER: "seaweedfs-filer.seaweedfs.svc.cluster.local:8888"
|
||||||
extraArgs:
|
# extraArgs:
|
||||||
- "-allowedOrigins=*"
|
# - "-allowedOrigins=*"
|
||||||
- "-filer=seaweedfs-filer.seaweedfs:8888"
|
# - "-filer=seaweedfs-filer.seaweedfs:8888"
|
||||||
|
#
|
||||||
service:
|
# service:
|
||||||
type: ClusterIP
|
# type: ClusterIP
|
||||||
ports:
|
# ports:
|
||||||
- name: http
|
# - name: http
|
||||||
port: 8333
|
# port: 8333
|
||||||
targetPort: 8333
|
# targetPort: 8333
|
||||||
protocol: TCP
|
# protocol: TCP
|
||||||
|
#
|
||||||
ingress:
|
# ingress:
|
||||||
enabled: true
|
# enabled: true
|
||||||
className: traefik
|
# className: traefik
|
||||||
annotations:
|
# annotations:
|
||||||
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
# traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
||||||
traefik.ingress.kubernetes.io/router.tls: "true"
|
# traefik.ingress.kubernetes.io/router.tls: "true"
|
||||||
cert-manager.io/cluster-issuer: "lets-encrypt"
|
# cert-manager.io/cluster-issuer: "lets-encrypt"
|
||||||
traefik.ingress.kubernetes.io/router.middlewares: seaweedfs-s3-cors@kubernetescrd
|
# traefik.ingress.kubernetes.io/router.middlewares: seaweedfs-s3-cors@kubernetescrd
|
||||||
host: "sws3.innovation-hub-niedersachsen.de"
|
# host: "sws3.innovation-hub-niedersachsen.de"
|
||||||
hosts:
|
# hosts:
|
||||||
- host: sws3.innovation-hub-niedersachsen.de
|
# - host: sws3.innovation-hub-niedersachsen.de
|
||||||
paths:
|
# paths:
|
||||||
- path: /
|
# - path: /
|
||||||
pathType: Prefix
|
# pathType: Prefix
|
||||||
tls:
|
# tls:
|
||||||
- secretName: sws3.innovation-hub-niedersachsen.de-tls
|
# - secretName: sws3.innovation-hub-niedersachsen.de-tls
|
||||||
hosts:
|
# hosts:
|
||||||
- sws3.innovation-hub-niedersachsen.de
|
# - sws3.innovation-hub-niedersachsen.de
|
||||||
|
#
|
||||||
destination:
|
# destination:
|
||||||
server: "https://kubernetes.default.svc"
|
# server: "https://kubernetes.default.svc"
|
||||||
namespace: seaweedfs
|
# namespace: seaweedfs
|
||||||
|
#
|
||||||
syncPolicy:
|
# syncPolicy:
|
||||||
managedNamespaceMetadata:
|
# managedNamespaceMetadata:
|
||||||
labels:
|
# labels:
|
||||||
pod-security.kubernetes.io/enforce: "privileged"
|
# pod-security.kubernetes.io/enforce: "privileged"
|
||||||
automated:
|
# automated:
|
||||||
selfHeal: true
|
# selfHeal: true
|
||||||
prune: true
|
# prune: true
|
||||||
syncOptions:
|
# syncOptions:
|
||||||
- CreateNamespace=true
|
# - CreateNamespace=true
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ spec:
|
|||||||
source:
|
source:
|
||||||
repoURL: 'https://wekan.github.io/charts/'
|
repoURL: 'https://wekan.github.io/charts/'
|
||||||
chart: wekan
|
chart: wekan
|
||||||
targetRevision: 8.*.*
|
targetRevision: 7.97.0
|
||||||
helm:
|
helm:
|
||||||
values: |
|
values: |
|
||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
@@ -21,6 +21,36 @@ spec:
|
|||||||
value: smtp://192.168.4.125:25?ignoreTLS=true&tls={rejectUnauthorized:false}&secure=false
|
value: smtp://192.168.4.125:25?ignoreTLS=true&tls={rejectUnauthorized:false}&secure=false
|
||||||
- name: MAIL_FROM
|
- name: MAIL_FROM
|
||||||
value: Noreplay admin@innovation-hub-niedersachsen.de
|
value: Noreplay admin@innovation-hub-niedersachsen.de
|
||||||
|
- name: OAUTH2_ENABLED
|
||||||
|
value: "true"
|
||||||
|
- name: OAUTH2_LOGIN_STYLE
|
||||||
|
value: "redirect"
|
||||||
|
- name: OAUTH2_CLIENT_ID
|
||||||
|
value: "wekan"
|
||||||
|
- name: OAUTH2_SERVER_URL
|
||||||
|
value: "https://keycloak.innovation-hub-niedersachsen.de"
|
||||||
|
- name: OAUTH2_AUTH_ENDPOINT
|
||||||
|
value: "/realms/innohub/protocol/openid-connect/auth"
|
||||||
|
- name: OAUTH2_USERINFO_ENDPOINT
|
||||||
|
value: "/realms/innohub/protocol/openid-connect/userinfo"
|
||||||
|
- name: OAUTH2_TOKEN_ENDPOINT
|
||||||
|
value: "/realms/innohub/protocol/openid-connect/token"
|
||||||
|
- name: OAUTH2_SECRET
|
||||||
|
value: "vp1kG3WgUdPCUAWvECZbAmBdST6Vgm0I"
|
||||||
|
- name: OAUTH2_ID_MAP
|
||||||
|
value: "sub"
|
||||||
|
- name: OAUTH2_USERNAME_MAP
|
||||||
|
value: "preferred_username"
|
||||||
|
- name: OAUTH2_EMAIL_MAP
|
||||||
|
value: "email"
|
||||||
|
- name: OAUTH2_FULLNAME_MAP
|
||||||
|
value: "name"
|
||||||
|
- name: OAUTH2_ADFS_ENABLED
|
||||||
|
value: "false"
|
||||||
|
- name: OAUTH2_B2C_ENABLED
|
||||||
|
value: "false"
|
||||||
|
- name: OAUTH2_REQUEST_PERMISSIONS
|
||||||
|
value: "openid profile email"
|
||||||
|
|
||||||
end_point: wekan.innovation-hub-niedersachsen.de
|
end_point: wekan.innovation-hub-niedersachsen.de
|
||||||
root_url: https://wekan.innovation-hub-niedersachsen.de
|
root_url: https://wekan.innovation-hub-niedersachsen.de
|
||||||
@@ -62,6 +92,8 @@ spec:
|
|||||||
|
|
||||||
mongodb:
|
mongodb:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
image:
|
||||||
|
tag: 7.0.28
|
||||||
storage:
|
storage:
|
||||||
className: longhorn
|
className: longhorn
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
|
|||||||
110
argocd/apps/wekantest/values-wekantest.yaml
Normal file
110
argocd/apps/wekantest/values-wekantest.yaml
Normal file
@@ -0,0 +1,110 @@
|
|||||||
|
apiVersion: argoproj.io/v1alpha1
|
||||||
|
kind: Application
|
||||||
|
metadata:
|
||||||
|
name: wekantest
|
||||||
|
finalizers:
|
||||||
|
- resources-finalizer.argocd.argoproj.io
|
||||||
|
spec:
|
||||||
|
project: default
|
||||||
|
source:
|
||||||
|
repoURL: 'https://wekan.github.io/charts/'
|
||||||
|
chart: wekan
|
||||||
|
targetRevision: 8.*.*
|
||||||
|
helm:
|
||||||
|
values: |
|
||||||
|
replicaCount: 1
|
||||||
|
dbname: wekan
|
||||||
|
env:
|
||||||
|
- name: MONGO_URL
|
||||||
|
value: mongodb://wekantest-mongodb:27017/wekan
|
||||||
|
- name: MAIL_URL
|
||||||
|
value: smtp://192.168.4.125:25?ignoreTLS=true&tls={rejectUnauthorized:false}&secure=false
|
||||||
|
- name: MAIL_FROM
|
||||||
|
value: Noreplay admin@innovation-hub-niedersachsen.de
|
||||||
|
- name: OAUTH2_ENABLED
|
||||||
|
value: "true"
|
||||||
|
- name: OAUTH2_LOGIN_STYLE
|
||||||
|
value: "redirect"
|
||||||
|
- name: OAUTH2_CLIENT_ID
|
||||||
|
value: "wekantest"
|
||||||
|
- name: OAUTH2_SERVER_URL
|
||||||
|
value: "https://keycloak.innovation-hub-niedersachsen.de"
|
||||||
|
- name: OAUTH2_AUTH_ENDPOINT
|
||||||
|
value: "/realms/innohub/protocol/openid-connect/auth"
|
||||||
|
- name: OAUTH2_USERINFO_ENDPOINT
|
||||||
|
value: "/realms/innohub/protocol/openid-connect/userinfo"
|
||||||
|
- name: OAUTH2_TOKEN_ENDPOINT
|
||||||
|
value: "/realms/innohub/protocol/openid-connect/token"
|
||||||
|
- name: OAUTH2_SECRET
|
||||||
|
value: "cOJpL4jiiA6OL8fFqA3lb4KCbxjjl7AQ"
|
||||||
|
- name: OAUTH2_ID_MAP
|
||||||
|
value: "sub"
|
||||||
|
- name: OAUTH2_USERNAME_MAP
|
||||||
|
value: "preferred_username"
|
||||||
|
- name: OAUTH2_EMAIL_MAP
|
||||||
|
value: "email"
|
||||||
|
- name: OAUTH2_FULLNAME_MAP
|
||||||
|
value: "name"
|
||||||
|
- name: OAUTH2_ADFS_ENABLED
|
||||||
|
value: "false"
|
||||||
|
- name: OAUTH2_B2C_ENABLED
|
||||||
|
value: "false"
|
||||||
|
- name: OAUTH2_REQUEST_PERMISSIONS
|
||||||
|
value: "openid profile email"
|
||||||
|
|
||||||
|
end_point: wekantest.innovation-hub-niedersachsen.de
|
||||||
|
root_url: https://wekantest.innovation-hub-niedersachsen.de
|
||||||
|
|
||||||
|
# Probe-Einstellungen anpassen
|
||||||
|
livenessProbe:
|
||||||
|
enabled: true
|
||||||
|
initialDelaySeconds: 60
|
||||||
|
periodSeconds: 15
|
||||||
|
timeoutSeconds: 10
|
||||||
|
failureThreshold: 5
|
||||||
|
|
||||||
|
readinessProbe:
|
||||||
|
enabled: true
|
||||||
|
initialDelaySeconds: 20
|
||||||
|
periodSeconds: 15
|
||||||
|
timeoutSeconds: 10
|
||||||
|
failureThreshold: 3
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
enabled: true
|
||||||
|
annotations:
|
||||||
|
kubernetes.io/ingress.class: traefik
|
||||||
|
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
||||||
|
traefik.ingress.kubernetes.io/router.tls: "true"
|
||||||
|
cert-manager.io/cluster-issuer: lets-encrypt
|
||||||
|
hosts:
|
||||||
|
- wekantest.innovation-hub-niedersachsen.de
|
||||||
|
tls:
|
||||||
|
- secretName: wekantest-tls
|
||||||
|
hosts:
|
||||||
|
- wekantest.innovation-hub-niedersachsen.de
|
||||||
|
route:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
sharedDataFolder:
|
||||||
|
enabled: true
|
||||||
|
storageClass: longhorn
|
||||||
|
|
||||||
|
mongodb:
|
||||||
|
enabled: true
|
||||||
|
storage:
|
||||||
|
className: longhorn
|
||||||
|
nodeSelector:
|
||||||
|
kubernetes.io/hostname: k3s-prod
|
||||||
|
|
||||||
|
destination:
|
||||||
|
server: 'https://kubernetes.default.svc'
|
||||||
|
namespace: wekantest
|
||||||
|
syncPolicy:
|
||||||
|
managedNamespaceMetadata:
|
||||||
|
labels:
|
||||||
|
pod-security.kubernetes.io/enforce: "privileged"
|
||||||
|
automated:
|
||||||
|
prune: true
|
||||||
|
syncOptions:
|
||||||
|
- CreateNamespace=true
|
||||||
53
config/rr/rr-ingressroute.yaml
Normal file
53
config/rr/rr-ingressroute.yaml
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
---
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: Middleware
|
||||||
|
metadata:
|
||||||
|
name: rr-stripprefix
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
stripPrefix:
|
||||||
|
prefixes:
|
||||||
|
- /
|
||||||
|
---
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: ServersTransport
|
||||||
|
metadata:
|
||||||
|
name: rr-transport
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
insecureSkipVerify: true
|
||||||
|
---
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: IngressRoute
|
||||||
|
metadata:
|
||||||
|
name: rr-external
|
||||||
|
namespace: kube-system
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: "lets-encrypt"
|
||||||
|
spec:
|
||||||
|
entryPoints:
|
||||||
|
- websecure
|
||||||
|
routes:
|
||||||
|
- match: Host(`rr.innovation-hub-niedersachsen.de`)
|
||||||
|
kind: Rule
|
||||||
|
services:
|
||||||
|
- name: rr-external-service
|
||||||
|
port: 5173
|
||||||
|
scheme: http
|
||||||
|
serversTransport: rr-transport
|
||||||
|
middlewares:
|
||||||
|
- name: rr-stripprefix
|
||||||
|
tls:
|
||||||
|
secretName: rr-tls
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: rr-external-service
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
type: ExternalName
|
||||||
|
externalName: 192-168-4-106.nip.io
|
||||||
|
ports:
|
||||||
|
- port: 5173
|
||||||
|
targetPort: 5173
|
||||||
Reference in New Issue
Block a user