memestream

This commit is contained in:
Nathan Rashleigh 2024-04-12 19:43:35 +10:00
parent d862728f1e
commit 5dcb8503a5
2 changed files with 208 additions and 0 deletions

View File

@ -0,0 +1,23 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: memestream-client
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-prod"
spec:
ingressClassName: nginx
tls:
- hosts:
- memestream.strix.systems
secretName: memestream-strix-systems-tls
rules:
- host: memestream.strix.systems
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: memestream-meili
port:
number: 7700

185
memestream/memestream.yaml Normal file
View File

@ -0,0 +1,185 @@
# -----------------------------------------------------------------------
# VOLUMES
# -----------------------------------------------------------------------
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: memestream-postgres-pv
spec:
storageClassName: ""
capacity:
storage: 2Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
claimRef:
namespace: default
name: memestream-postgres-pvc
hostPath:
path: "/var/lib/rancher/k3s/storage/memestream-postgres-pv"
type: DirectoryOrCreate
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: memestream-postgres-pvc
spec:
volumeName: memestream-postgres-pv
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: memestream-meili-pv
spec:
storageClassName: ""
capacity:
storage: 2Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
claimRef:
namespace: default
name: memestream-meili-pvc
hostPath:
path: "/var/lib/rancher/k3s/storage/memestream-meili-pv"
type: DirectoryOrCreate
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: memestream-meili-pvc
spec:
volumeName: memestream-meili-pv
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
---
# -----------------------------------------------------------------------
# DEPLOYMENTS
# -----------------------------------------------------------------------
apiVersion: apps/v1
kind: Deployment
metadata:
name: memestream-postgres
spec:
replicas: 1
selector:
matchLabels:
app: memestream-postgres
template:
metadata:
labels:
app: memestream-postgres
spec:
containers:
- name: postgres
image: postgres:16
ports:
- containerPort: 5432
env:
- name: POSTGRES_DB
valueFrom:
secretKeyRef:
name: memestream
key: POSTGRES_DB
- name: POSTGRES_USER
valueFrom:
secretKeyRef:
name: memestream
key: POSTGRES_USER
- name: POSTGRES_PASSWORD
valueFrom:
secretKeyRef:
name: memestream
key: POSTGRES_PASSWORD
volumeMounts:
- name: memestream-postgres-storage
mountPath: /var/lib/postgresql/data
volumes:
- name: memestream-postgres-storage
persistentVolumeClaim:
claimName: memestream-postgres-pvc
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: memestream-meili
spec:
replicas: 1
selector:
matchLabels:
app: memestream-meili
template:
metadata:
labels:
app: memestream-meili
spec:
containers:
- name: meili
image: getmeili/meilisearch:v1.7
ports:
- containerPort: 7700
env:
- name: MEILI_MASTER_KEY
valueFrom:
secretKeyRef:
name: memestream
key: MEILI_MASTER_KEY
volumeMounts:
- name: memestream-meili-storage
mountPath: /data/meili
volumes:
- name: memestream-meili-storage
persistentVolumeClaim:
claimName: memestream-meili-pvc
---
# -----------------------------------------------------------------------
# SERVICES
# -----------------------------------------------------------------------
apiVersion: v1
kind: Service
metadata:
name: memestream-postgres
spec:
selector:
app: memestream-postgres
ports:
- port: 5432
---
apiVersion: v1
kind: Service
metadata:
name: memestream-meili
spec:
selector:
app: memestream-meili
ports:
- port: 7700