diff --git a/.gitignore b/.gitignore index 4243a45..72a4250 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,2 @@ -gitea-actions.git/** *.sensitive.yml *.sensitive.yaml diff --git a/services/Gitea/supportingfiles/gitea-actions.git b/services/Gitea/supportingfiles/gitea-actions.git deleted file mode 160000 index 75bf520..0000000 --- a/services/Gitea/supportingfiles/gitea-actions.git +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 75bf520697466147ad5de09e0ab53e4305eeec7f diff --git a/services/Guacamole/application-guacamole.yaml b/services/Guacamole/application-guacamole.yaml deleted file mode 100644 index 68360d0..0000000 --- a/services/Guacamole/application-guacamole.yaml +++ /dev/null @@ -1,17 +0,0 @@ -apiVersion: argoproj.io/v1alpha1 -kind: Application -metadata: - name: guacamole - namespace: argo-cd -spec: - destination: - namespace: guacamole - server: https://kubernetes.default.svc - project: default - source: - path: services/Guacamole - repoURL: https://code.spamasaurus.com/djpbessems/Kubernetes.K3s.installLog.git - targetRevision: HEAD - syncPolicy: - automated: - selfHeal: true diff --git a/services/Guacamole/deployment-Guacamole.yml b/services/Guacamole/deployment-Guacamole.yml deleted file mode 100644 index de668ee..0000000 --- a/services/Guacamole/deployment-Guacamole.yml +++ /dev/null @@ -1,79 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: guacamole - namespace: guacamole - labels: - app: guacamole -spec: - replicas: 1 - selector: - matchLabels: - app: guacamole - template: - metadata: - labels: - app: guacamole - spec: - hostname: guacamole - containers: - - name: guacamole - image: guacamole/guacamole:1.5.5 - env: - - name: GUACD_HOSTNAME - value: 'guacamole.guacamole.svc.cluster.local' - - name: POSTGRESQL_HOSTNAME - value: 'guacamole.guacamole.svc.cluster.local' - - name: GUACAMOLE_HOME - value: '/etc/guacamole' - envFrom: - - secretRef: - name: guacamole-db-secret - volumeMounts: - - name: flexvolsmb-guacamole-home - mountPath: /etc/guacamole - ports: - - name: ui - containerPort: 8080 - livenessProbe: - httpGet: - port: ui - path: /guacamole - - name: guacd - image: guacamole/guacd:1.5.5 - env: - - name: GUACD_LOG_LEVEL - value: 'debug' - ports: - - name: proxy - containerPort: 4822 - livenessProbe: - tcpSocket: - port: 4822 - - name: db - image: postgres:16-alpine - securityContext: - runAsUser: 70 - runAsGroup: 70 - env: - - name: PGDATA - value: /var/lib/postgresql/data/pgdata - envFrom: - - secretRef: - name: guacamole-db-secret - volumeMounts: - - name: flexvolsmb-guacamole-db - mountPath: /var/lib/postgresql/data - ports: - - name: db - containerPort: 5432 - livenessProbe: - exec: - command: ["pg_isready" ,"-U" ,"$POSTGRES_USER", "-d" ,"$POSTGRES_DATABASE"] - volumes: - - name: flexvolsmb-guacamole-db - persistentVolumeClaim: - claimName: flexvolsmb-guacamole-db - - name: flexvolsmb-guacamole-home - persistentVolumeClaim: - claimName: flexvolsmb-guacamole-home diff --git a/services/Guacamole/middleware-Guacamole.yml b/services/Guacamole/middleware-Guacamole.yml deleted file mode 100644 index 2cbe3aa..0000000 --- a/services/Guacamole/middleware-Guacamole.yml +++ /dev/null @@ -1,8 +0,0 @@ -apiVersion: traefik.io/v1alpha1 -kind: Middleware -metadata: - name: prepend-path-guacamole - namespace: guacamole -spec: - addPrefix: - prefix: /guacamole diff --git a/services/Guacamole/persistentVolume-Guacamole.yml b/services/Guacamole/persistentVolume-Guacamole.yml deleted file mode 100644 index ac51491..0000000 --- a/services/Guacamole/persistentVolume-Guacamole.yml +++ /dev/null @@ -1,37 +0,0 @@ -apiVersion: v1 -kind: PersistentVolume -metadata: - name: flexvolsmb-guacamole-db -spec: - capacity: - storage: 1Gi - accessModes: - - ReadWriteMany - storageClassName: flexvolsmb-guacamole-db - flexVolume: - driver: mount/smb - secretRef: - name: flexvolsmb-credentials - options: - opts: file_mode=0755,dir_mode=0700,uid=70,gid=70,iocharset=utf8,nobrl - server: 192.168.154.195 - share: /K3s.Volumes/guacamole/db ---- -apiVersion: v1 -kind: PersistentVolume -metadata: - name: flexvolsmb-guacamole-home -spec: - capacity: - storage: 1Gi - accessModes: - - ReadWriteMany - storageClassName: flexvolsmb-guacamole-home - flexVolume: - driver: mount/smb - secretRef: - name: flexvolsmb-credentials - options: - opts: file_mode=0755,dir_mode=0755,iocharset=utf8 - server: 192.168.154.195 - share: /K3s.Volumes/guacamole/home diff --git a/services/Guacamole/persistentVolumeClaim-Guacamole.yml b/services/Guacamole/persistentVolumeClaim-Guacamole.yml deleted file mode 100644 index 0a3bf83..0000000 --- a/services/Guacamole/persistentVolumeClaim-Guacamole.yml +++ /dev/null @@ -1,25 +0,0 @@ -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: flexvolsmb-guacamole-db - namespace: guacamole -spec: - accessModes: - - ReadWriteMany - storageClassName: flexvolsmb-guacamole-db - resources: - requests: - storage: 1Gi ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: flexvolsmb-guacamole-home - namespace: guacamole -spec: - accessModes: - - ReadWriteMany - storageClassName: flexvolsmb-guacamole-home - resources: - requests: - storage: 1Gi diff --git a/services/Guacamole/sealedsecret-flexvolsmb-credentials.yaml b/services/Guacamole/sealedsecret-flexvolsmb-credentials.yaml deleted file mode 100644 index c64693a..0000000 --- a/services/Guacamole/sealedsecret-flexvolsmb-credentials.yaml +++ /dev/null @@ -1,16 +0,0 @@ -apiVersion: bitnami.com/v1alpha1 -kind: SealedSecret -metadata: - creationTimestamp: null - name: flexvolsmb-credentials - namespace: guacamole -spec: - encryptedData: - password: AgA5Rj3gn3X5ITztEpXBzECP5GUHAQVY/KnDQYxJFXocY55x4i6ggTjRllXAstQhh6vkGNV0TGuuATV34/6qvt3UzTZoajicQ5cJ1nU2SiYMQWuZh7BoTDv6osua19jsS39gnJUGDvrVWNZ6sKPXK+B/2cBkqh6JKQWHYzJUy4iqJ6ZCKLOaEVSVibX+U5UAhKJ2KPH5jIxV/asO/PtjtC6saYWOPXyMCgjFwcVOs843/sagVJB46bkK8Ud8842vE8UrZtESxNY5d/TYZkWqQs/4OR14ceBtVr3AhmTy371LDzI8zkFxATfUSjBJ8nlmTy+SMjD5B8tgU3j/qKw0fmVRIcgYybd6H7WtdeQm+eKRx9fuHnYAqEGIkIm+zZ0tGYVRXsZ4dFIe3SZ7/Q1vylOSnPV1g3o4ofSQj/kMME4Rtczis6qJNsYZEbB55alKtQJZx+i86bYyqRlZvzamYzZUqfrMECkOlsqKOvQ0ZSRZxqBFR4hwxoRNs9THe02qMjpjKiqjAZrfn2GpuavKoEdUqwhcQOGdYBN7LNPcRdTxulE9d5jTwmZ+9hBdWLxP/tMcO72XlVQm9w59UXtA/FogN5d5e5B5Wu7qfodcmCToQ9O9BUCCeHl94U98IjzutSAOMbbaRp3XRbSEawpVyxIF4N7LVxm40VhlvZDScASkxyHENwIPAdP1ZWUGt0MTLOXFQ7rEwhdJrj2yszsnE9FP - username: AgBzKCegpgyL2EkamKd2VejVzroRz0fcVFnZ/9RuvYYSq2IyhJj4mbE0CUyGAX1mB48HsacloVMVTvFwDCoPRmsjR1qddiCWUaye9/wYsUYrYhEv+o+3IWFHIdzPN8ArF8B9DwcvAtamAx8BOf7Zx3UTbRYyrM8/2114VRVmtEcBpR7BUp+Djt4O2rJFPeDgHIkg3ljcg3hWdi3QO2NM8nvszn8rQCXBAKDJ1oQqFkUoXO+L6RBPmONVEjX5WN+noalf4C1ZSJNrLg0cCI4/2rpvt9LOkFlchI4h3c4xIj9mqkzj+d9FN0M55yfrAS6PbHXmd1GdoLqAbl8F0SV3kmm9SnCvxPQZOZTTkEs4zVrRYSgSt1s7I5t9Ng+/5kIXi6qN7YGtfvSbRGzFUO+39qRhtdpPvF3dpfFnGRFPdylrP5x067JKVywC/9gaHcVvlHHAwbFKnYh2lnDrmzwL3VqpVyxfxY7ksruUWrFGWhZKEfbw1m2d0oVO3fozgx+IxwGlnw1Lo1q2DFFY5zt47kRKC91cJBTGHZT8LUsyS8+WJpXRsrDQvp96gNgPs1+hQOJWl9g/HAyv2kbVnkRDPekOSzLwfDW4PAqwZ2NehUSP0G7jDZgLXTOFa5U+tZ0HBF0ENy5Ln2O7qlRqcX4tWXFUlffX7G/MRNof6HqYtU2ydo0iJSyvBbqe4hx2PHXOK3fYd/I8HAU= - template: - metadata: - creationTimestamp: null - name: flexvolsmb-credentials - namespace: guacamole - type: mount/smb diff --git a/services/Guacamole/sealedsecret-guacamole-db-secret.yaml b/services/Guacamole/sealedsecret-guacamole-db-secret.yaml deleted file mode 100644 index e069cbf..0000000 --- a/services/Guacamole/sealedsecret-guacamole-db-secret.yaml +++ /dev/null @@ -1,23 +0,0 @@ -apiVersion: bitnami.com/v1alpha1 -kind: SealedSecret -metadata: - creationTimestamp: null - name: guacamole-db-secret - namespace: guacamole -spec: - encryptedData: - POSTGRES_DATABASE: AgA0C44YvrKsG2WUUm5+7tqX8RRtMquYLbFa4iUZHSHZs/ZCWy+JGw+O3Ig/hGrPPOGglGVMvqfDRVeERuCz9jQND7jBP5Oe5pROwFbt0ekB1QKm3BLWKJKoIj2ltSWtNUcWARwAbNk/8uclRFv1De3vfEGRPBnsOhVjToT3Qph36nGQgeHCybvDw6Xgf8A8I2F8RGCnGtxqWIr4eZKHVEPHBPxoxHPz/xit9vNfgw+yK3n630PNqp+Bu4o1N7DDiurD+MIV/RvzAP1Jhqg7n6U5tvTAFfEF8yUfQd/LNdZAkiYcTnYG4JwK133kuNZIRIdvP6E5S+3xQocsEKNY4ZDGgw6KWQchXEOOp+i7mOjGhXcF4bryp5Z2bi4iOvQ55Cwr90GiWCsZ1g9J3vDkRH+1D2UiSMDQy0aFhnKEBoLbumoN411sa0oxefGqJbNpn8pe3VO0mI9k0mXCvsTLDf1/RA5a1YwuRo/6Q6ZMd/VxZ9FimllmC2WYl0bdaJ6A7NFv8WfrsR4phM/Hj1nTtTvkbmDq0zAVcRrnKOIYT+To2TYtnpwdGjrMuIdIgjbwo8o2Pn0zvrwe0azV8TKlsS8F8PHkhUZtkfdniEJ+6FVAlhmNgCqcpuqdYWT6qwpXX0ZlfzbWS7Nt1ZvYH6/IOHq7p5djgddr6bn35WY6iq4hdpbJrg7UYF+CANUAMCLQEGT92UI45J9JJWU= - POSTGRES_PASSWORD: AgBFg6OidnqhbEKtnMxChooiuK3G/X/fwhJ832aSVL4T2p07C/1UPRtIImVrZA63prgvSLq1iqJKGTtw6GwEcEP7s++HbHjDMyKScvKJMpLhckY7YHl4gEQxXNZkWobmKwliaHlXYLRVrVCqCT4q4WflAvslUGwzND/twEm1t2AP+6ybuzZbfuNTvrbcK70iuOlNm+ld4m2Ldisz4ZkQG4zVXP40ORgQvONo/eLfEhLEGxQFukB61oq221jQkoqTHZLKf9hMU75afzb9zvN9pm4tM6a6WkPMBCAOTBZgs57nzOjrddgHhXB7aW0oAFoF5miiiQxZ3SIBuaxaokvVD1+L+ZKGpTjPOT0Dznv9TOp0+FKSsX31UQId+4yLwMUHNLWGqxsrqBbaNkdrscWcDcdrzh24t2tIkPCUI3ArXhIS5F9Fxu1aRKY5Wg89g9koknFpvlX9TvYniQm3X+ngtgWYJNCXkJ/v18zuYcydr3hQiYMOpXRAw3wD7iKziEG0vPQU3StG1xjbvPkRX/h1zFyy3SR9YaXtm2c2fj5WwiW7dfRWfhuLaRnSBafC1tzOD4D4fCGKnJsAO8jepX5KMK9gUcJ/aLdjXSAZE/D+oMviMPjI58iRJAiwAS8Un2+4mGLB8JNQ/YFnSBwCkdPl8QLO8TeN1MdDuZPgSdrVC2XUKpbRWVkJXp6dh0yPjQlibhyHWZsZYXraZhg= - POSTGRES_USER: AgBmOoEkV1YDYXrLVMQayXMnQjgc3v0kO1YHIJyDRICaa6gboAxjaiLDXY06Y2gCsQbuaBuZA6Njck9KxO/D631D4vKeELkhU3dlz8XxhhByjqafjnbeaJ+UIc2uzghOoDHt1g2dwYijxLmtfWbxjVxTipSl4ssIa12oHiAY7fW1DGZ7OCQqtMsdw9Yz0KJeJohILSTRWz2e36BUNcqMNuUnDSOVYD/LncctaqoULUujdzlyyvGQ5CEvlaihZGEX4xcJi4rHSHa99igNdMlbpiLjkL5ni5CEE5q9vYSw3iWW76vNoEI2CresVaxkeZqVEG3OdZ2GxmEyDnf7cPu0cPWluMEeSPE/APjk+Cl6HrniuqXFhS4SGaNYSwOS8F4pe90wATv8QF1X60zS20FuDUikY8PwMJl6RDlHJm/TmHsCG1gJYSaA3OikDYQNUsTa0Q/02AY6PnsbxDLCsU4r5FcPMhKkcpS2C2/9/o7icyTN8agXqQQSWIhTdKe7DGUbrUskInuvEFEt+LhOPSlVs5kERIUxBHIR1J5R58u0BPKvV7GUUR+6I/PQ985QoAhrfg29jORz/PzmgFVyEa111iWik73Lqj1bPDpBYat+R2hbxEPJSkvXxsWPzZ/1PG2KuFvStvgi7QMI9bkalVk25AQX6FhmZrWVenhkveZzkVwwCNWfGaekoJVVN22umVN8P6IYgXa3yTIL3iA= - POSTGRESQL_DATABASE: AgADX6LYJTMPmR9H2ucCoKUQQ9Us6vbUrnBeUH+o57/WVDeWPbVnp4wYw3lBIaXUSWhGhL8o3zW/4VYgD3CJa9UT0t8Dz8ounq0ZgmMebF54cqOAoktUb0gY9MGZfM8M5QIMg+biZjNhC9MfBNcVca1Vkjaq1eun2uqWv0ILmg0+/3XroG9vhhHHMDrwairIKHksCx11q0sHEZjBIZMekORUBNVjgEEfi2L1Ysrqa0CKNK2qHSIRJHtZ9grsKt1RtI3XlWChz4rb0+9wtaGkyhAdXZMPSUbIrgXHTW1w6aAEaFKSckqYEj9xCaGLMtzPnt/xyj70c22spP9w2+hpQnO7gCxLWjpEQo1H6n+CbDm2AgbmCPWYngIBARarcIrUtXbNk3SfEI+RWx+q6edl47X0fqa9SlPkWQQOgO0cBtsx4A3JZ+1ZPpLtDCSa6zAdr2Vx10A21cpwrD3GcH7o6YTwEavepO1oIKhqLApApDZwfzOu0MBQTawSMw3VAaaIgTV/gG8iGtB8RZNLq8wuqK9amUGSEdO8Rrq2nCw0p0fJeNY8EhlWzW/s7agEijlUaeznMsPja8Er+IqCz+Z37l7h2VVFjeXjyqXZdAUd7RDDRwznpuIysAo7IfSrhbteoAf3AxCTYUSp1It4uqwXeZcZ1TnbyAadMXlGG/T9OZo2SxMVKY61rZfCZh1C5AAYe1+etSVUUTbl6bc= - POSTGRESQL_PASSWORD: AgBgpVWC4oiyTIVF4j4ayJqsGePICGvp/3+ouqzEIQNe+TKk4GZ/coNI0Gm8u90ERjCQHUMvR8M6F9pAMkQ4ccvhGL9IogkDY1ygpU+wNunfbePt8uNKfEoKVW9kU067Ufa2XfB6+YVO5CUO1Nhq4s/rf7DWeh4m5pYenR2YatJS0zmBjkC0ljiDotLxqaVIrO141SrpGZMRhh2hhsA7WnvpYVqwVt02Wwv+qXyMuzyIiUQAi28N5uKY/Ylhyplo/4FyIJ+zKutBYT5IKuwUrMkqovLO7u1Zqck3bR3AB/7M0MF4vscGy7UpNTu/ozbcLwC+pS6npUbeVxcay6HtvlkXSbjdLvBIZ7pXlMiqvBQ8jSDMpeIFrH9orwwW6xjHSUBq5s22b2ifJGSODBr2OGufhp8SgvBk/5Z6zYS2ju6HhUfT1DQR9hpilovO9rsqQhHOOddhxg6iF/61SSFsCPgE4lcTOYduX0uRfBRC4lrlhiw2E1MyUxtpY8KDxwlk1g5E5NzMiIh6wNqvkJfvgUkJVoVs4P5l14edYiFFhwSkcNVHNJdmsJQ5Y9CeiRddRgumUFkj532RgTtaCwcVcrEpZtNMXpyvoRtmqnAb46S3TEhIzGm4EZRD8ms9D4qNbM/6o1F1MwchwCkE3qhaim1pdo3fH+ADO/onPaYcLF/GZuKD7ni6k52Fz45QSWkTAyhN9qiKq0rVUEo= - POSTGRESQL_USER: AgBv6Vvdei4lzImz9J3d3UgtfK9S/8r8fkmpBn4gHF1l9QvJKK8whJluP2a4Y7QgunXAhe4TzLOHBiqTjMeR618NDDFtOH+fJWLmnFRvgS5M0vHrD+xCopC37gQmeV7tPXGgdJo4cBLWvz6SJvCrSBSj05/2GgnocDZ7Sn4sPZuflhhdb61A6KxEiF+Rtx3hzQtDortVlJFgH28hzLDktDhyMElw2pFoKf6NYK5/nGr4OPBz3cgrtaziBfLd/uZbReFp4gjHd1Are8k1IMUqUYTnohiM1gbTg568t9Hjrzuiz0MlzIJvdPgE4iUksf5mV2rJ8FyWxIvKAI93iOQFSSIeEsy8IUzChJDcsUq1gMVzpXDBgu1tmtwQoXNpaUlcKoMVV6Zc3JBL5T1kKk5ppyXj3vXCMkvqlqPb32J96qV430jEgNp7Fyqvx7rfq/U+sXnGdPgcg1HBvPZmExq8iwb0pp3qjMpzyFp7mVYXqGIJFAY6ZqLU88o3Zscbmws+Nn9w2fBXRAHC+/1XPn0nqDBI7dyhQVLy2cpkX0rRBd05bks3WoPUlqxr9jCWRmeIxYSBguPNcaxPWDLUofcC7OroucUCfgqr0jzPaPiAwmB/Tnj5L0SNIs7APRArzrznxeZA1cOCu6dbsHe9tDUcuoUa53zBpRxYcDUTTJ43Y6NX4QA0ui+HsJQAV4k/smneVY2iDx9Iug3R+4s= - template: - data: null - metadata: - creationTimestamp: null - labels: - app: guacamole - name: guacamole-db-secret - namespace: guacamole - type: Opaque diff --git a/services/Guacamole/service-Guacamole.yml b/services/Guacamole/service-Guacamole.yml deleted file mode 100644 index 84df660..0000000 --- a/services/Guacamole/service-Guacamole.yml +++ /dev/null @@ -1,18 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: guacamole - namespace: guacamole -spec: - ports: - - protocol: TCP - name: ui - port: 8080 - - protocol: TCP - name: proxy - port: 4822 - - protocol: TCP - name: db - port: 5432 - selector: - app: guacamole diff --git a/services/PVR/Prowlarr/deployment-prowlarr.yaml b/services/PVR/Prowlarr/deployment-prowlarr.yaml index 3ac6e24..98c9da5 100644 --- a/services/PVR/Prowlarr/deployment-prowlarr.yaml +++ b/services/PVR/Prowlarr/deployment-prowlarr.yaml @@ -10,6 +10,8 @@ spec: selector: matchLabels: app: prowlarr + strategy: + type: Recreate template: metadata: labels: diff --git a/services/Guacamole/_namespace-Guacamole.yml b/services/Webtop/_namespace-webtop.yaml similarity index 69% rename from services/Guacamole/_namespace-Guacamole.yml rename to services/Webtop/_namespace-webtop.yaml index c660ecc..21dcc2b 100644 --- a/services/Guacamole/_namespace-Guacamole.yml +++ b/services/Webtop/_namespace-webtop.yaml @@ -1,4 +1,4 @@ apiVersion: v1 kind: Namespace metadata: - name: guacamole + name: webtop diff --git a/services/Webtop/application-webtop.yaml b/services/Webtop/application-webtop.yaml new file mode 100644 index 0000000..3939f1d --- /dev/null +++ b/services/Webtop/application-webtop.yaml @@ -0,0 +1,18 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: webtop + namespace: argo-cd +spec: + destination: + namespace: webtop + server: https://kubernetes.default.svc + project: default + syncPolicy: + automated: {} + syncOptions: + - CreateNamespace=true + sources: + - repoURL: https://code.spamasaurus.com/djpbessems/Kubernetes.K3s.installLog + path: services/Webtop + targetRevision: HEAD diff --git a/services/Webtop/configmap-init.d-zsh.yaml b/services/Webtop/configmap-init.d-zsh.yaml new file mode 100644 index 0000000..c68d669 --- /dev/null +++ b/services/Webtop/configmap-init.d-zsh.yaml @@ -0,0 +1,18 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: init.d-zsh + namespace: webtop +data: + 00-zsh.sh: | + #!/bin/bash + + # Make sure zsh is installed and available + ZSH_BIN=$(command -v zsh) + + if [[ -x "$ZSH_BIN" ]]; then + echo "[webtop] Setting abc's default shell to $ZSH_BIN" + usermod -s "$ZSH_BIN" abc + else + echo "[webtop] zsh not found, skipping chsh" + fi diff --git a/services/Webtop/deployment-webtop.yaml b/services/Webtop/deployment-webtop.yaml new file mode 100644 index 0000000..bdaa955 --- /dev/null +++ b/services/Webtop/deployment-webtop.yaml @@ -0,0 +1,48 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: webtop + namespace: webtop + labels: + app: webtop +spec: + replicas: 1 + selector: + matchLabels: + app: webtop + strategy: + type: Recreate + template: + metadata: + labels: + app: webtop + spec: + containers: + - name: webtop + image: lscr.io/linuxserver/webtop:latest + env: + - name: START_DOCKER + value: "false" + - name: DOCKER_MODS + value: linuxserver/mods:universal-package-install + - name: INSTALL_PACKAGES + value: nano|zsh + - name: TZ + value: Australia/Melbourne + ports: + - name: web + containerPort: 3001 + volumeMounts: + - mountPath: /config + name: webtop-config + - mountPath: /custom-cont-init.d/00-zsh.sh + name: webtop-initd + subPath: 00-zsh.sh + volumes: + - name: webtop-config + persistentVolumeClaim: + claimName: webtop-config + - name: webtop-initd + configMap: + name: init.d-zsh + defaultMode: 0700 diff --git a/services/Guacamole/ingressRoute-Guacamole.yml b/services/Webtop/ingressroute-webtop.yaml similarity index 57% rename from services/Guacamole/ingressRoute-Guacamole.yml rename to services/Webtop/ingressroute-webtop.yaml index 5ce15cd..c4e93d8 100644 --- a/services/Guacamole/ingressRoute-Guacamole.yml +++ b/services/Webtop/ingressroute-webtop.yaml @@ -1,8 +1,8 @@ apiVersion: traefik.io/v1alpha1 kind: IngressRoute metadata: - name: guacamole - namespace: guacamole + name: webtop + namespace: webtop spec: entryPoints: - websecure @@ -10,9 +10,10 @@ spec: - match: Host(`remote.spamasaurus.com`) kind: Rule services: - - name: guacamole - port: 8080 + - name: webtop + port: 3001 + scheme: https + serversTransport: insecure-skip-verify middlewares: - - name: prepend-path-guacamole + - name: 2fa-authentication@file - name: security-headers@file - # - name: compression@file diff --git a/services/Webtop/persistentvolumeclaim-webtop-config.yaml b/services/Webtop/persistentvolumeclaim-webtop-config.yaml new file mode 100644 index 0000000..12a55e7 --- /dev/null +++ b/services/Webtop/persistentvolumeclaim-webtop-config.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: webtop-config + namespace: webtop +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 20Gi diff --git a/services/Webtop/sealedsecret-smb-credentials.yaml b/services/Webtop/sealedsecret-smb-credentials.yaml new file mode 100644 index 0000000..205d76c --- /dev/null +++ b/services/Webtop/sealedsecret-smb-credentials.yaml @@ -0,0 +1,16 @@ +apiVersion: bitnami.com/v1alpha1 +kind: SealedSecret +metadata: + creationTimestamp: null + name: smb-credentials + namespace: webtop +spec: + encryptedData: + password: AgAwMck+jQJxNiv0vSkvgEcpbToRv2u5KzJSvJveY4gYXDeBW3mOdweCznypGtDZ6au+gDsAphqJKmgp7TMC3nYppjaqEm9nFybOnwQHhX+7t36c1MRQWNwBhMp3DDNikv9EhQBVdqiXQShX/sPQEBYgNCmspBGQNv/QWFxJPRbmpg1DdFn6TkRlW3VNqecO6RTgbj6YpKG9SCgQjsvXdOOEM85tc2v0UODITFNlemxq2anks8FzSb3VxXBqWOq3np1DcrTbHkcQMokVp9to8d/UXdD1L2jbWr4ykhosf3AV+9Ojgp32D48ODS0GgGykgN9bArwmRLNSYJbclIqViePO78CaOTAnquKf7HN1ZqaLhCNMLvY+MOzrwvmXlWVmmHLI1YLYJSxV9u2WTJlU7jRN/xlCgKbAUC50fhgqMd8l4RXlieqrSePnpgpnI96+fovW1Q2jeYngXX1RzjEsG1Up2ZhSiuWoP+We0nH3VCbIUrjk5XAdojrO1Uj9A1FOd0Gx1GVj6e++3/DpjuGOSphNspXXWiCn3hbH0idh/r011AQwKq6RgDO8QhtSZx8Ditnqu50hCmg8gRK6h2hSZ8LXiRvKy7l5H3Ca/99KyhDHoA7n1fqRN7702rOyz8txjwkbgyadk7T0zYdMYxXffrVgfD2XIWhKdjwtxbiO0OGeWcLD3IQwlZcyRsz0stqUPhbB+t4BNN5RE78tGpx3e0yv + username: AgAyzzViZggLUc47A3TkctmUG6rCEDnu2wsLXgRGs2Vw5Sg1KnOuUDhE/BQpM70Zhl07af+v0SqWkMJHM2n+L5jQ7ed27rqsRDYNJNXJqt6gwY6D7Rx0OYOfxOILrk0LXAfLIaZiuREzwrm6JExI5+xu/nTDgQm7sIufQvIrWvaJVM2zfhtHLGaB1x/CGzrc6ViXfPsYAFrlHWihNJJ+PVb3aoW68/oip5MmhKdmm9igf0Hmtr67fMm2A0JSA8cSbFA/bG2i94qHX+zswWrIzePgNrz2x2bpeag7p2/2XO6JssMn5XkZZVIWbB+cEX1wf8srrUnJqD8ycgiD1CY96A5ILPd50IErDYGv9xZAkxpfO53q3USC4dx8O4AnZFHkVWHfNYd0RBqhnHWTMpUXfEY5TC5KHA2RxS6v5wa3oBU446uSviswDuDPhg4aKStTasBvgmVgRLmnI9d/NxvIlSmNxMfaIvpyKXnvNZ8eaKIB9LeBVBzmubtATx712blNua78NuojBHtVCp042KW027fDs9aAJvUg1zFArxCwrgepakOrxO4WgUB1AUTomzKzZfKu4PjWRCYRwpyBHg38F/Y1IYAkffIMfWXQ31YQm2ng4/Xg+OYPJG7eKoVvGEWrqwFi0hqcEvXJPcYpp/o1fDKnwB61paMZOk7D4rJmdI9dTJsEZ6aIZzMSvRWZuw817FH3Feu1bgs= + template: + metadata: + creationTimestamp: null + name: smb-credentials + namespace: webtop + type: Opaque diff --git a/services/Webtop/serverstransport-insecure-skip-verify.yaml b/services/Webtop/serverstransport-insecure-skip-verify.yaml new file mode 100644 index 0000000..935b773 --- /dev/null +++ b/services/Webtop/serverstransport-insecure-skip-verify.yaml @@ -0,0 +1,7 @@ +apiVersion: traefik.io/v1alpha1 +kind: ServersTransport +metadata: + name: insecure-skip-verify + namespace: webtop +spec: + insecureSkipVerify: true diff --git a/services/Webtop/service-webtop.yaml b/services/Webtop/service-webtop.yaml new file mode 100644 index 0000000..5d03ce5 --- /dev/null +++ b/services/Webtop/service-webtop.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +kind: Service +metadata: + name: webtop + namespace: webtop +spec: + ports: + - protocol: TCP + name: web + port: 3001 + selector: + app: webtop