diff options
| author | Paul Buetow <paul@buetow.org> | 2025-07-31 15:23:02 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2025-07-31 15:23:02 +0300 |
| commit | a90e8cc95a39003722cb6da5abc8a2118fbe8511 (patch) | |
| tree | 44447cc431451cc2823803bf3f131997109345dd /f3s | |
| parent | 6ff10a29ce04d2e603eac3e5bdd539affc42bdf9 (diff) | |
add anki
Diffstat (limited to 'f3s')
| -rw-r--r-- | f3s/anki-sync-server/Makefile | 12 | ||||
| -rw-r--r-- | f3s/anki-sync-server/deployment.yaml | 30 | ||||
| -rw-r--r-- | f3s/anki-sync-server/ingress.yaml | 20 | ||||
| -rw-r--r-- | f3s/anki-sync-server/namespace.yaml | 4 | ||||
| -rw-r--r-- | f3s/anki-sync-server/persistent-volume.yaml | 27 | ||||
| -rw-r--r-- | f3s/anki-sync-server/service.yaml | 15 |
6 files changed, 108 insertions, 0 deletions
diff --git a/f3s/anki-sync-server/Makefile b/f3s/anki-sync-server/Makefile new file mode 100644 index 0000000..a3b12c2 --- /dev/null +++ b/f3s/anki-sync-server/Makefile @@ -0,0 +1,12 @@ +apply: + kubectl apply -f namespace.yaml + kubectl apply -f persistent-volume.yaml + kubectl apply -f service.yaml + kubectl apply -f deployment.yaml + kubectl apply -f ingress.yaml + +delete: + kubectl delete -f ingress.yaml + kubectl delete -f service.yaml + kubectl delete -f deployment.yaml + kubectl delete -f persistent-volume.yaml diff --git a/f3s/anki-sync-server/deployment.yaml b/f3s/anki-sync-server/deployment.yaml new file mode 100644 index 0000000..982c4cb --- /dev/null +++ b/f3s/anki-sync-server/deployment.yaml @@ -0,0 +1,30 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: anki-sync-server-deployment + namespace: services +spec: + replicas: 1 + selector: + matchLabels: + app: anki-sync-server + template: + metadata: + labels: + app: anki-sync-server + spec: + containers: + - name: anki-sync-server + image: registry.lan.buetow.org:30001/anki-sync-server:latest + ports: + - containerPort: 8080 + env: + - name: ANKISYNCD_PORT + value: "8080" + volumeMounts: + - name: anki-sync-server-data + mountPath: /data + volumes: + - name: anki-sync-server-data + persistentVolumeClaim: + claimName: anki-sync-server-pvc diff --git a/f3s/anki-sync-server/ingress.yaml b/f3s/anki-sync-server/ingress.yaml new file mode 100644 index 0000000..010c588 --- /dev/null +++ b/f3s/anki-sync-server/ingress.yaml @@ -0,0 +1,20 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: anki-sync-server-ingress + namespace: services + annotations: + spec.ingressClassName: traefik + traefik.ingress.kubernetes.io/router.entrypoints: web +spec: + rules: + - host: anki.f3s.buetow.org + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: anki-sync-server-service + port: + number: 8080 diff --git a/f3s/anki-sync-server/namespace.yaml b/f3s/anki-sync-server/namespace.yaml new file mode 100644 index 0000000..da390d0 --- /dev/null +++ b/f3s/anki-sync-server/namespace.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: services diff --git a/f3s/anki-sync-server/persistent-volume.yaml b/f3s/anki-sync-server/persistent-volume.yaml new file mode 100644 index 0000000..043a16f --- /dev/null +++ b/f3s/anki-sync-server/persistent-volume.yaml @@ -0,0 +1,27 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: anki-sync-server-pv +spec: + capacity: + storage: 1Gi + volumeMode: Filesystem + accessModes: + - ReadWriteOnce + persistentVolumeReclaimPolicy: Retain + hostPath: + path: /data/nfs/k3svolumes/anki-sync-server + type: Directory +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: anki-sync-server-pvc + namespace: services +spec: + storageClassName: "" + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 1Gi diff --git a/f3s/anki-sync-server/service.yaml b/f3s/anki-sync-server/service.yaml new file mode 100644 index 0000000..a8eb183 --- /dev/null +++ b/f3s/anki-sync-server/service.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + app: anki-sync-server + name: anki-sync-server-service + namespace: services +spec: + ports: + - name: web + port: 8080 + protocol: TCP + targetPort: 8080 + selector: + app: anki-sync-server |
