added doka2-lobby-list
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 5s
Check with kubeconform / lint (push) Successful in 7s
Auto-update README / Generate README and Create MR (push) Successful in 4s

This commit is contained in:
2026-07-13 16:05:04 +03:00
parent 62bd2291d0
commit 55be79a361
7 changed files with 163 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: doka2-lobby-list
namespace: argocd
spec:
project: apps
destination:
namespace: doka2-lobby-list
server: https://kubernetes.default.svc
source:
repoURL: ssh://git@gt.hexor.cy:30022/ab/homelab.git
targetRevision: HEAD
path: k8s/apps/doka2-lobby-list
syncPolicy:
automated:
selfHeal: true
prune: true
syncOptions:
- CreateNamespace=true
+51
View File
@@ -0,0 +1,51 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: doka2-lobby-list
labels:
app: doka2-lobby-list
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: doka2-lobby-list
template:
metadata:
labels:
app: doka2-lobby-list
spec:
nodeSelector:
kubernetes.io/os: linux
volumes:
- name: creds
persistentVolumeClaim:
claimName: doka2-lobby-list-creds
containers:
- name: doka2-lobby-list
image: ultradesu/doka2-lobby-list:latest
imagePullPolicy: Always
ports:
- name: http
containerPort: 8000
protocol: TCP
env:
- name: ADMIN_PASSWORD
valueFrom:
secretKeyRef:
name: doka2-lobby-list-secrets
key: ADMIN_PASSWORD
- name: CREDS_DIR
value: /data/creds
volumeMounts:
- name: creds
mountPath: /data/creds
resources:
requests:
cpu: "50m"
memory: "128Mi"
limits:
cpu: "500m"
memory: "512Mi"
@@ -0,0 +1,26 @@
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: doka2-lobby-list-secrets
spec:
target:
name: doka2-lobby-list-secrets
deletionPolicy: Delete
template:
type: Opaque
data:
ADMIN_PASSWORD: |-
{{ .admin_password | trim }}
data:
- secretKey: admin_password
sourceRef:
storeRef:
name: vaultwarden-login
kind: ClusterSecretStore
remoteRef:
conversionStrategy: Default
decodingStrategy: None
metadataPolicy: None
key: af4618dd-6431-4b20-b617-c00bae9ceff6
property: password
+26
View File
@@ -0,0 +1,26 @@
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: doka2-lobby-list-tls-ingress
annotations:
cert-manager.io/cluster-issuer: letsencrypt
traefik.ingress.kubernetes.io/router.middlewares: kube-system-https-redirect@kubernetescrd
acme.cert-manager.io/http01-edit-in-place: "true"
spec:
ingressClassName: traefik
rules:
- host: doka.hexor.cy
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: doka2-lobby-list
port:
number: 80
tls:
- secretName: doka2-lobby-list-tls
hosts:
- doka.hexor.cy
@@ -0,0 +1,10 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- app.yaml
- deployment.yaml
- external-secrets.yaml
- service.yaml
- ingress.yaml
- storage.yaml
+16
View File
@@ -0,0 +1,16 @@
---
apiVersion: v1
kind: Service
metadata:
name: doka2-lobby-list
labels:
app: doka2-lobby-list
spec:
type: ClusterIP
selector:
app: doka2-lobby-list
ports:
- port: 80
targetPort: http
protocol: TCP
name: http
+14
View File
@@ -0,0 +1,14 @@
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: doka2-lobby-list-creds
labels:
app: doka2-lobby-list
spec:
accessModes:
- ReadWriteOnce
storageClassName: longhorn
resources:
requests:
storage: 1Gi