apps(lychee): Add lychee

main
trivernis 9 months ago
parent 9e57a49d8d
commit e786e79c9b
WARNING! Although there is a key with this ID in the database it does not verify this commit! This commit is SUSPICIOUS.
GPG Key ID: DFFFCC2C7A02DB45

@ -0,0 +1,11 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: lychee
metadata:
name: lychee
resources:
- app/namespace.yaml
- app/volume.yaml
- app/deploy.yaml
- app/service.yaml
- app/route.yaml

@ -0,0 +1,57 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: lychee
namespace: lychee
labels:
app: lychee
spec:
replicas: 1
selector:
matchLabels:
app: lychee
template:
metadata:
labels:
app: lychee
spec:
containers:
- image: lycheeorg/lychee:v5.1.2
name: lychee
volumeMounts:
- name: lychee-files
mountPath: "/lychee/uploads"
- name: lychee-config
mountPath: "/lychee/conf"
- name: lychee-sym
mountPath: "/lychee/sym"
- name: lychee-sqlite
mountPath: "/lychee/db"
ports:
- containerPort: 80
name: http
protocol: TCP
env:
- name: PHP_TZ
value: Europe/Berlin
- name: TIMEZONE
value: Europe/Berlin
- name: DB_CONNECTION
value: sqlite
- name: DB_DATABSE
value: /lychee/db/lychee.db
- name: APP_URL
value: https://lychee.trivernis.net
volumes:
- name: lychee-sym
persistentVolumeClaim:
claimName: lychee-sym-pvc
- name: lychee-sqlite
persistentVolumeClaim:
claimName: lychee-sqlite-pvc
- name: lychee-uploads
persistentVolumeClaim:
claimName: lychee-uploads-pvc
- name: lychee-config
persistentVolumeClaim:
claimName: lychee-config-pvc

@ -0,0 +1,6 @@
apiVersion: v1
kind: Namespace
metadata:
name: lychee
labels:
name: lychee

@ -0,0 +1,17 @@
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: web
namespace: lychee
spec:
entryPoints:
- web
routes:
- match: Host(`lychee.trivernis.net`, `lychee.iulse.com`)
kind: Rule
middlewares:
- name: strict-security-headers
namespace: default
services:
- name: lychee
port: http

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: lychee
namespace: lychee
spec:
ports:
- name: http
port: 80
protocol: TCP
targetPort: http
selector:
app: lychee
type: ClusterIP

@ -0,0 +1,51 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: lychee-uploads-pvc
namespace: lychee
spec:
accessModes:
- ReadWriteOnce
storageClassName: "ebs-hdd"
resources:
requests:
storage: 10Gi
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: lychee-sym-pvc
namespace: lychee
spec:
accessModes:
- ReadWriteOnce
storageClassName: "ebs-ssd"
resources:
requests:
storage: 1Gi
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: lychee-sqlite-pvc
namespace: lychee
spec:
accessModes:
- ReadWriteOnce
storageClassName: "ebs-ssd"
resources:
requests:
storage: 1Gi
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: lychee-config-pvc
namespace: lychee
spec:
accessModes:
- ReadWriteOnce
storageClassName: "ebs-ssd"
resources:
requests:
storage: 1Gi

@ -354,3 +354,20 @@ spec:
prune: true
wait: true
timeout: 5m0s
---
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: apps-lychee
namespace: flux-system
spec:
dependsOn:
- name: repos
interval: 5m
sourceRef:
kind: GitRepository
name: flux-system
path: ./apps/lychee
prune: true
wait: true
timeout: 5m0s

Loading…
Cancel
Save