initial checkin

This commit is contained in:
Radar231 2021-07-28 12:03:01 -04:00
commit 53c51fa258
6 changed files with 128 additions and 0 deletions

14
README.md Normal file
View File

@ -0,0 +1,14 @@
# guacamole k8s manifest
## Introduction
This deploys a guacamole server. It uses the maxwaldorf/guacamole container,
which in turn is forked from the oznu/guacamole container. This image is an
all in one guacamole solution (guacamole, guacd, and postfix).
## Links
* https://hub.docker.com/r/maxwaldorf/guacamole
* https://github.com/MaxWaldorf/guacamole
* https://hub.docker.com/r/oznu/guacamole

View File

@ -0,0 +1,41 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: maxwaldorf-guacamole
spec:
selector:
matchLabels:
app: maxwaldorf-guacamole
replicas: 1
strategy:
type: Recreate
template:
metadata:
labels:
app: maxwaldorf-guacamole
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: beta.kubernetes.io/arch
operator: In
values:
- arm64
containers:
- name: maxwaldorf-guacamole
image: maxwaldorf/guacamole:latest_arm64v8
ports:
- containerPort: 8080
name: "maxwa-guacamole"
volumeMounts:
- name: maxwaldorf-guacamole
mountPath: "/config"
volumes:
- name: maxwaldorf-guacamole
persistentVolumeClaim:
claimName: maxwaldorf-guacamole-pvc
# EOF

View File

@ -0,0 +1,19 @@
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: maxwaldorf-guacamole
annotations:
kubernetes.io/ingress.class: traefik
spec:
rules:
- host: guac.lan
http:
paths:
- path: /
pathType: Prefix
backend:
serviceName: maxwaldorf-guacamole
servicePort: 8080
# EOF

View File

@ -0,0 +1,21 @@
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: maxwaldorf-guacamole-pv
labels:
name: maxwaldorf-guacamole-pv
spec:
storageClassName: manual
capacity:
storage: 1Gi
accessModes:
- ReadWriteOnce
mountOptions:
- hard
- nfsvers=4.0
nfs:
server: 192.168.7.11
path: "/volume1/k8s-storage/guacamole/maxwaldorf-guacamole"
# EOF

View File

@ -0,0 +1,19 @@
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: maxwaldorf-guacamole-pvc
labels:
app: maxwaldorf-guacamole
spec:
accessModes:
- ReadWriteOnce
storageClassName: "manual"
resources:
requests:
storage: 1Gi
selector:
matchLabels:
name: maxwaldorf-guacamole-pv
# EOF

View File

@ -0,0 +1,14 @@
---
apiVersion: v1
kind: Service
metadata:
name: maxwaldorf-guacamole
spec:
ports:
- name: http
port: 8080
selector:
# apply service to any pod with label app: nginx
app: maxwaldorf-guacamole
# EOF