Initial commit: k8s cluster manifests and scripts

This commit is contained in:
2026-04-01 15:34:02 +08:00
commit 2f04fa4473
49 changed files with 4109 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: opengist
namespace: default
labels:
app: opengist
spec:
replicas: 1
selector:
matchLabels:
app: opengist
template:
metadata:
labels:
app: opengist
spec:
containers:
- name: opengist
image: ghcr.io/thomiceli/opengist:latest
imagePullPolicy: IfNotPresent
ports:
- name: http
containerPort: 6157
- name: ssh
containerPort: 2222
resources:
limits:
memory: "512Mi"
cpu: "500m"
volumeMounts:
- name: data-vol
mountPath: /opengist
volumes:
- name: data-vol
persistentVolumeClaim:
claimName: opengist-pvc

View File

@@ -0,0 +1,39 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: opengist-ingress
namespace: default
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: web,websecure
spec:
ingressClassName: traefik
tls:
- hosts:
- opengist.lotimmy.com
- opengist.192.168.42.120.nip.io
secretName: nip-io-cert
rules:
- host: opengist.lotimmy.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: opengist-web
port:
number: 6157
- host: opengist.192.168.42.120.nip.io
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: opengist-web
port:
number: 6157

View File

@@ -0,0 +1,13 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: opengist-pvc
namespace: default
spec:
storageClassName: longhorn
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi

View File

@@ -0,0 +1,16 @@
apiVersion: v1
kind: Service
metadata:
name: opengist-ssh
namespace: default
spec:
type: NodePort
selector:
app: opengist
ports:
- name: ssh
port: 2222
targetPort: 2222
protocol: TCP
nodePort: 32222

View File

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