Add custom pw wp

This commit is contained in:
Ruben Hensen
2025-03-13 11:11:06 +01:00
parent f3f337ff7b
commit 7bce445878
18 changed files with 46 additions and 0 deletions
@@ -0,0 +1,12 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
labels:
io.kompose.service: custom-logs
name: custom-logs
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100Mi
+83
View File
@@ -0,0 +1,83 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: museum
spec:
replicas: 1
selector:
matchLabels:
app: ente
strategy:
type: Recreate
template:
metadata:
labels:
app: ente
spec:
containers:
- env:
- name: ENTE_DB_HOST
value: "helm-postgresql"
- name: ENTE_DB_PORT
value: "5432"
- name: ENTE_DB_NAME
value: "ente_db"
- name: ENTE_DB_USER
value: "pguser"
- name: ENTE_DB_PASSWORD
valueFrom:
secretKeyRef:
name: ente-photos-config
key: pgpass
- name: ENTE_S3_ARE_LOCAL_BUCKETS
value: "false"
- name: ENTE_S3_ENTE-PHOTOS_KEY
value: "ente-photos-user"
- name: ENTE_S3_ENTE-PHOTOS_SECRET
valueFrom:
secretKeyRef:
name: ente-photos-config
key: miniopass
- name: ENTE_S3_ENTE-PHOTOS_ENDPOINT
value: "minio.hensen.io:3200"
- name: ENTE_S3_ENTE-PHOTOS_REGION
value: "nl"
- name: ENTE_S3_ENTE-PHOTOS_BUCKET
value: "ente-photos"
image: ghcr.io/ente-io/server
name: museum
# command: [ "sh", "-c"]
# # loop forever, outputting "yo" every 5 seconds
# args: ["while true; do echo 'yo' && sleep 5; done;"]
ports:
- containerPort: 8080
protocol: TCP
- containerPort: 2112
protocol: TCP
volumeMounts:
- mountPath: /var/logs
name: custom-logs
- mountPath: /museum.yaml
name: museum-claim1
readOnly: true
- mountPath: /data
name: museum-claim3
readOnly: true
# - args:
# - TCP-LISTEN:3200,fork,reuseaddr
# - TCP:minio:3200
# image: alpine/socat
# name: socat
restartPolicy: Always
volumes:
- name: custom-logs
persistentVolumeClaim:
claimName: custom-logs
- name: museum-claim1
persistentVolumeClaim:
claimName: museum-claim1
readOnly: true
- name: museum-claim3
persistentVolumeClaim:
claimName: museum-claim3
readOnly: true
+36
View File
@@ -0,0 +1,36 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ente-server-ingress
annotations:
# nginx.ingress.kubernetes.io/rewrite-target: /
cert-manager.io/cluster-issuer: prod-cluster-issuer
nginx.ingress.kubernetes.io/ssl-passthrough: "false"
nginx.ingress.kubernetes.io/enable-cors: "true"
nginx.ingress.kubernetes.io/cors-allow-origin: "http://localhost:3000/"
nginx.ingress.kubernetes.io/cors-allow-methods: "PUT, GET, POST, OPTIONS, DELETE"
# If you encounter a redirect loop or are getting a 307 response code
# then you need to force the nginx ingress to connect to the backend using HTTPS.
#
nginx.ingress.kubernetes.io/backend-protocol: "HTTP"
namespace: ente-photos
spec:
ingressClassName: nginx
rules:
- host: ente-server.hensen.io
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: ente-service
port:
name: "eightyeighty"
# TLS configuration for HTTPS
tls:
# TLS secretName used on ClusterIssuer
- secretName: letsencrypt-prod
hosts:
- ente-server.hensen.io
+21
View File
@@ -0,0 +1,21 @@
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: template
spec:
refreshInterval: "15s"
secretStoreRef:
name: vault-backend
kind: ClusterSecretStore
target:
name: ente-photos-config
data:
- secretKey: pgpass
remoteRef:
key: ente-photos-postgres
property: password
- secretKey: miniopass
remoteRef:
key: minio-ente-photos-user
property: password
@@ -0,0 +1,23 @@
kind: Deployment
apiVersion: apps/v1
metadata:
name: ente-web
labels:
app: ente-web
# docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1
spec:
replicas: 1
selector:
matchLabels:
app: ente-web
template:
metadata:
labels:
app: ente-web
spec:
containers:
- name: ente-web
image: hebury/ente-web:0.2
ports:
- containerPort: 3000
protocol: TCP
+36
View File
@@ -0,0 +1,36 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ente-web-ingress
annotations:
# nginx.ingress.kubernetes.io/rewrite-target: /
cert-manager.io/cluster-issuer: prod-cluster-issuer
nginx.ingress.kubernetes.io/ssl-passthrough: "false"
# nginx.ingress.kubernetes.io/enable-cors: "true"
# nginx.ingress.kubernetes.io/cors-allow-origin: "http://localhost:3000/"
# nginx.ingress.kubernetes.io/cors-allow-methods: "PUT, GET, POST, OPTIONS, DELETE"
# If you encounter a redirect loop or are getting a 307 response code
# then you need to force the nginx ingress to connect to the backend using HTTPS.
#
nginx.ingress.kubernetes.io/backend-protocol: "HTTP"
namespace: ente-photos
spec:
ingressClassName: nginx
rules:
- host: ente.hensen.io
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: ente-service
port:
name: "https"
# TLS configuration for HTTPS
tls:
# TLS secretName used on ClusterIssuer
- secretName: letsencrypt-prod2
hosts:
- ente.hensen.io
+11
View File
@@ -0,0 +1,11 @@
apiVersion: v1
kind: Service
metadata:
name: ente-web-service
spec:
ports:
- name: https
port: 3000
targetPort: 3000
selector:
app: ente-web
+25
View File
@@ -0,0 +1,25 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: helm-postgresql
namespace: argocd
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
syncPolicy:
syncOptions:
- CreateNamespace=true
project: default
sources:
- chart: postgresql
repoURL: registry-1.docker.io/bitnamicharts
targetRevision: 15.5.29
helm:
valueFiles:
- $values/ente-photos/postgres-values.yaml
- repoURL: https://github.com/rubenhensen/k8scd.git
targetRevision: HEAD
ref: values
destination:
server: https://kubernetes.default.svc
namespace: ente-photos
@@ -0,0 +1,12 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
labels:
io.kompose.service: museum-claim1
name: museum-claim1
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100Mi
@@ -0,0 +1,12 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
labels:
io.kompose.service: museum-claim3
name: museum-claim3
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100Mi
+14
View File
@@ -0,0 +1,14 @@
apiVersion: v1
kind: Service
metadata:
name: ente-service
spec:
selector:
app: ente
ports:
- name: "eightyeighty"
port: 8080
targetPort: 8080
- name: "2112"
port: 2112
targetPort: 2112
+16
View File
@@ -0,0 +1,16 @@
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: pgadmin-es
namespace: ente-photos
spec:
refreshInterval: "15s"
secretStoreRef:
name: vault-backend
kind: ClusterSecretStore
target:
name: pgadmin-secret
dataFrom:
- extract:
key: pgadmin
+45
View File
@@ -0,0 +1,45 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: pgadmin
spec:
selector:
matchLabels:
app: pgadmin
replicas: 1
template:
metadata:
labels:
app: pgadmin
spec:
containers:
- name: pgadmin4
image: dpage/pgadmin4
env:
- name: PGADMIN_DEFAULT_EMAIL
value: "admin@admin.com"
- name: PGADMIN_DEFAULT_PASSWORD
valueFrom:
secretKeyRef:
name: pgadmin-secret
key: pgadmin-default-password
- name: PGADMIN_PORT
value: "80"
ports:
- containerPort: 80
name: pgadminport
---
apiVersion: v1
kind: Service
metadata:
name: pgadmin
labels:
app: pgadmin
spec:
selector:
app: pgadmin
type: NodePort
ports:
- port: 80
nodePort: 30200
File diff suppressed because it is too large Load Diff
+16
View File
@@ -0,0 +1,16 @@
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: postgresql-es
namespace: ente-photos
spec:
refreshInterval: "15s"
secretStoreRef:
name: vault-backend
kind: ClusterSecretStore
target:
name: postgres-config
dataFrom:
- extract:
key: ente-photos-postgres