reorganised

This commit is contained in:
2025-12-30 19:58:08 +11:00
parent 8aa0a67cd1
commit 19a9126fae
9 changed files with 24 additions and 0 deletions

9
manifests/deploy.sh Executable file
View File

@@ -0,0 +1,9 @@
oc apply -f ns.yml
./scc-updates.sh
oc apply -f pv_books.yml
oc apply -f pv_config.yml
oc apply -f pvc_config.yml
oc apply -f pvc_books.yml
oc apply -f deployment.yml
oc apply -f service.yaml
oc apply -f route.yaml

63
manifests/deployment.yml Normal file
View File

@@ -0,0 +1,63 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: calibre
namespace: calibre
labels:
app: calibre
app.kubernetes.io/instance: calibre
version: latest
type: third-party
facing: internal
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: calibre
template:
metadata:
labels:
app: calibre
spec:
serviceAccountName: calibre-sa
securityContext:
runAsUser: 0
runAsGroup: 0
fsGroup: 0
containers:
- name: calibre
image: docker.io/linuxserver/calibre-web:latest
env:
- name: PUID
value: "501"
- name: PGID
value: "1000"
- name: TZ
value: "Australia/Sydney"
- name: DOCKER_MODS
value: "linuxserver/calibre-web:calibre"
ports:
- name: "http-port"
containerPort: 8083
protocol: TCP
volumeMounts:
- name: calibre-config
mountPath: /config
- name: calibre-books
mountPath: /books
resources:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "512Mi"
cpu: "1000m"
volumes:
- name: calibre-config
persistentVolumeClaim:
claimName: calibre-config-csi
- name: calibre-books
persistentVolumeClaim:
claimName: calibre-books-csi

9
manifests/ns.yml Normal file
View File

@@ -0,0 +1,9 @@
apiVersion: v1
kind: Namespace
metadata:
name: calibre
labels:
app: calibre
type: third-party
facing: internal
argocd.argoproj.io/managed-by: openshift-gitops

12
manifests/pvc_books.yml Normal file
View File

@@ -0,0 +1,12 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: calibre-books-csi
namespace: calibre
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 8Gi
storageClassName: nfs-csi

12
manifests/pvc_config.yml Normal file
View File

@@ -0,0 +1,12 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: calibre-config-csi
namespace: calibre
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 500Mi
storageClassName: nfs-csi

24
manifests/route.yaml Normal file
View File

@@ -0,0 +1,24 @@
kind: Route
apiVersion: route.openshift.io/v1
metadata:
name: calibre-route
namespace: calibre
annotations:
cert-manager.io/issuer-kind: ClusterIssuer
cert-manager.io/issuer-name: letsencrypt-dns01-cloudflare
labels:
app.kubernetes.io/instance: calibre
spec:
host: calibre.apilab.us
path: /
to:
kind: Service
name: calibre
weight: 100
port:
targetPort: http-port
tls:
termination: edge
certificate:
key:
wildcardPolicy: None

2
manifests/scc-updates.sh Executable file
View File

@@ -0,0 +1,2 @@
oc create sa calibre-sa -n calibre
oc adm policy add-scc-to-user anyuid -z calibre-sa -n calibre

17
manifests/service.yaml Normal file
View File

@@ -0,0 +1,17 @@
apiVersion: v1
kind: Service
metadata:
name: calibre
namespace: calibre
labels:
app: calibre
app.kubernetes.io/instance: calibre
spec:
selector:
app: calibre
ports:
- name: "http-port"
protocol: TCP
targetPort: 8083
port: 80
type: LoadBalancer