chore(syncthing): initial commit

This commit is contained in:
David Landry 2024-05-24 21:40:19 -04:00
parent 5609d18631
commit 0bf93c3227
5 changed files with 125 additions and 0 deletions

View file

@ -0,0 +1,31 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: syncthing
labels:
app.kubernetes.io/name: syncthing
annotations:
cert-manager.io/cluster-issuer: letsencrypt-issuer
nginx.ingress.kubernetes.io/whitelist-source-range: 192.168.1.1/16
gethomepage.dev/enabled: "true"
gethomepage.dev/name: Syncthing
gethomepage.dev/group: Files
gethomepage.dev/href: https://sync.int.nc.landry.land
gethomepage.dev/description: Sync files between computers
gethomepage.dev/icon: syncthing
spec:
tls:
- hosts:
- "syncthing.int.nc.landry.land"
rules:
- host: "syncthing.int.nc.landry.land"
http:
paths:
- path: "/"
pathType: Prefix
backend:
service:
name: syncthing
port:
name: http

View file

@ -0,0 +1,10 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: sync-config
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100Mi

View file

@ -0,0 +1,10 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: sync-data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100Mi

View file

@ -0,0 +1,53 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: syncthing
spec:
replicas: 1
selector:
matchLabels:
app: syncthing
strategy:
type: Recreate
template:
metadata:
annotations:
labels:
app: syncthing
spec:
containers:
- env:
- name: PGID
value: "1000"
- name: PUID
value: "1000"
image: syncthing/syncthing
name: syncthing
ports:
- containerPort: 22000
hostPort: 22000
protocol: TCP
name: syncthing-tcp
- containerPort: 22000
hostPort: 22000
protocol: UDP
name: syncthing-quic
- containerPort: 21027
hostPort: 21027
protocol: UDP
name: syncthing-discovery
- containerPort: 8384
name: http
volumeMounts:
- mountPath: /var/syncthing/config
name: sync-config
- mountPath: /var/syncthing/Sync
name: sync-data
restartPolicy: Always
volumes:
- name: sync-config
persistentVolumeClaim:
claimName: sync-config
- name: sync-data
persistentVolumeClaim:
claimName: sync-data

View file

@ -0,0 +1,21 @@
apiVersion: v1
kind: Service
metadata:
annotations:
labels:
name: syncthing
spec:
ports:
- name: "22000"
port: 22000
targetPort: 22000
- name: 22000-udp
port: 22000
protocol: UDP
targetPort: 22000
- name: "21027"
port: 21027
protocol: UDP
targetPort: 21027
selector:
app: syncthing