Pterodactyl++
This commit is contained in:
parent
a09a513977
commit
30ada6e0f2
4
services/Pterodactyl/_namespace-pterodactyl.yml
Normal file
4
services/Pterodactyl/_namespace-pterodactyl.yml
Normal file
@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: pterodactyl
|
17
services/Pterodactyl/application-pterodactyl.yaml
Normal file
17
services/Pterodactyl/application-pterodactyl.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: pterodactyl
|
||||
namespace: argo-cd
|
||||
spec:
|
||||
destination:
|
||||
namespace: pterodactyl
|
||||
server: https://kubernetes.default.svc
|
||||
project: default
|
||||
source:
|
||||
path: services/Pterodactyl
|
||||
repoURL: https://code.spamasaurus.com/djpbessems/Kubernetes.K3s.installLog.git
|
||||
targetRevision: HEAD
|
||||
syncPolicy:
|
||||
automated:
|
||||
selfHeal: true
|
86
services/Pterodactyl/deployment-pterodactyl.yaml
Normal file
86
services/Pterodactyl/deployment-pterodactyl.yaml
Normal file
@ -0,0 +1,86 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: pterodactyl
|
||||
namespace: pterodactyl
|
||||
labels:
|
||||
app: pterodactyl
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: pterodactyl
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: pterodactyl
|
||||
spec:
|
||||
containers:
|
||||
- name: app
|
||||
image: ghcr.io/pterodactyl/panel:latest
|
||||
imagePullPolicy: Always
|
||||
env:
|
||||
- name: APP_URL
|
||||
value: https://games.spamasaurus.com
|
||||
- name: DB_HOST
|
||||
value: pterodactyl.pterodactyl.svc.cluster.local
|
||||
- name: DB_PORT
|
||||
value: '3306'
|
||||
- name: REDIS_HOST
|
||||
value: pterodactyl.pterodactyl.svc.cluster.local
|
||||
envFrom:
|
||||
- secretRef:
|
||||
name: pterodactyl-db-secret
|
||||
ports:
|
||||
- name: web
|
||||
containerPort: 80
|
||||
volumeMounts:
|
||||
- mountPath: /app/var
|
||||
name: flexvolsmb-pterodactyl-data
|
||||
- mountPath: /etc/nginx/http.d/
|
||||
name: flexvolsmb-pterodactyl-proxy
|
||||
- mountPath: /app/storage/logs
|
||||
name: flexvolsmb-pterodactyl-logs
|
||||
- name: db
|
||||
image: mariadb:10.5
|
||||
args:
|
||||
- --default-authentication-plugin=mysql_native_password
|
||||
env:
|
||||
- name: MYSQL_DATABASE
|
||||
value: panel
|
||||
- name: MYSQL_USER
|
||||
value: pterodactyl
|
||||
envFrom:
|
||||
- secretRef:
|
||||
name: pterodactyl-db-secret
|
||||
volumeMounts:
|
||||
- name: flexvolsmb-pterodactyl-db
|
||||
mountPath: var/lib/mysql
|
||||
ports:
|
||||
- name: db
|
||||
containerPort: 3306
|
||||
# livenessProbe:
|
||||
# exec:
|
||||
# command: ["pg_isready" ,"-U" ,"$POSTGRES_USER", "-d" ,"$POSTGRES_DATABASE"]
|
||||
- name: redis
|
||||
image: redis:alpine
|
||||
ports:
|
||||
- name: redis
|
||||
containerPort: 6379
|
||||
# volumeMounts:
|
||||
# - name: flexvolsmb-pterodactyl-redis
|
||||
# mountPath: /data
|
||||
|
||||
volumes:
|
||||
- name: flexvolsmb-pterodactyl-data
|
||||
persistentVolumeClaim:
|
||||
claimName: flexvolsmb-pterodactyl-data
|
||||
- name: flexvolsmb-pterodactyl-proxy
|
||||
persistentVolumeClaim:
|
||||
claimName: flexvolsmb-pterodactyl-proxy
|
||||
- name: flexvolsmb-pterodactyl-db
|
||||
persistentVolumeClaim:
|
||||
claimName: flexvolsmb-pterodactyl-db
|
||||
- name: flexvolsmb-pterodactyl-logs
|
||||
persistentVolumeClaim:
|
||||
claimName: flexvolsmb-pterodactyl-logs
|
17
services/Pterodactyl/ingressroute-pterodactyl.yaml
Normal file
17
services/Pterodactyl/ingressroute-pterodactyl.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
apiVersion: traefik.io/v1alpha1
|
||||
kind: IngressRoute
|
||||
metadata:
|
||||
name: pterodactyl
|
||||
namespace: pterodactyl
|
||||
spec:
|
||||
entryPoints:
|
||||
- websecure
|
||||
routes:
|
||||
- match: Host(`games.spamasaurus.com`)
|
||||
kind: Rule
|
||||
services:
|
||||
- name: pterodactyl
|
||||
port: 80
|
||||
middlewares:
|
||||
- name: security-headers@file
|
||||
# - name: compression@file
|
@ -0,0 +1,19 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolume
|
||||
metadata:
|
||||
name: flexvolsmb-pterodactyl-data
|
||||
namespace: pterodactyl
|
||||
spec:
|
||||
capacity:
|
||||
storage: 1Gi
|
||||
accessModes:
|
||||
- ReadWriteMany
|
||||
storageClassName: flexvolsmb-pterodactyl-data
|
||||
flexVolume:
|
||||
driver: mount/smb
|
||||
secretRef:
|
||||
name: flexvolsmb-credentials
|
||||
options:
|
||||
opts: file_mode=0600,dir_mode=0700,uid=100,gid=101,iocharset=utf8,nobrl
|
||||
server: 192.168.154.195
|
||||
share: /K3s.Volumes/pterodactyl/data
|
@ -0,0 +1,19 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolume
|
||||
metadata:
|
||||
name: flexvolsmb-pterodactyl-db
|
||||
namespace: pterodactyl
|
||||
spec:
|
||||
capacity:
|
||||
storage: 1Gi
|
||||
accessModes:
|
||||
- ReadWriteMany
|
||||
storageClassName: flexvolsmb-pterodactyl-db
|
||||
flexVolume:
|
||||
driver: mount/smb
|
||||
secretRef:
|
||||
name: flexvolsmb-credentials
|
||||
options:
|
||||
opts: file_mode=0600,dir_mode=0700,uid=999,gid=999,iocharset=utf8,nobrl
|
||||
server: 192.168.154.195
|
||||
share: /K3s.Volumes/pterodactyl/db
|
@ -0,0 +1,19 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolume
|
||||
metadata:
|
||||
name: flexvolsmb-pterodactyl-logs
|
||||
namespace: pterodactyl
|
||||
spec:
|
||||
capacity:
|
||||
storage: 1Gi
|
||||
accessModes:
|
||||
- ReadWriteMany
|
||||
storageClassName: flexvolsmb-pterodactyl-logs
|
||||
flexVolume:
|
||||
driver: mount/smb
|
||||
secretRef:
|
||||
name: flexvolsmb-credentials
|
||||
options:
|
||||
opts: file_mode=0600,dir_mode=0700,uid=100,gid=101,iocharset=utf8,nobrl
|
||||
server: 192.168.154.195
|
||||
share: /K3s.Volumes/pterodactyl/logs
|
@ -0,0 +1,19 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolume
|
||||
metadata:
|
||||
name: flexvolsmb-pterodactyl-proxy
|
||||
namespace: pterodactyl
|
||||
spec:
|
||||
capacity:
|
||||
storage: 1Gi
|
||||
accessModes:
|
||||
- ReadWriteMany
|
||||
storageClassName: flexvolsmb-pterodactyl-proxy
|
||||
flexVolume:
|
||||
driver: mount/smb
|
||||
secretRef:
|
||||
name: flexvolsmb-credentials
|
||||
options:
|
||||
opts: file_mode=0600,dir_mode=0700,uid=100,gid=101,iocharset=utf8,nobrl
|
||||
server: 192.168.154.195
|
||||
share: /K3s.Volumes/pterodactyl/proxy
|
@ -0,0 +1,12 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: flexvolsmb-pterodactyl-data
|
||||
namespace: pterodactyl
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteMany
|
||||
storageClassName: flexvolsmb-pterodactyl-data
|
||||
resources:
|
||||
requests:
|
||||
storage: 1Gi
|
@ -0,0 +1,12 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: flexvolsmb-pterodactyl-db
|
||||
namespace: pterodactyl
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteMany
|
||||
storageClassName: flexvolsmb-pterodactyl-db
|
||||
resources:
|
||||
requests:
|
||||
storage: 1Gi
|
@ -0,0 +1,12 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: flexvolsmb-pterodactyl-logs
|
||||
namespace: pterodactyl
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteMany
|
||||
storageClassName: flexvolsmb-pterodactyl-logs
|
||||
resources:
|
||||
requests:
|
||||
storage: 1Gi
|
@ -0,0 +1,12 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: flexvolsmb-pterodactyl-proxy
|
||||
namespace: pterodactyl
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteMany
|
||||
storageClassName: flexvolsmb-pterodactyl-proxy
|
||||
resources:
|
||||
requests:
|
||||
storage: 1Gi
|
@ -0,0 +1,16 @@
|
||||
apiVersion: bitnami.com/v1alpha1
|
||||
kind: SealedSecret
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: flexvolsmb-credentials
|
||||
namespace: pterodactyl
|
||||
spec:
|
||||
encryptedData:
|
||||
password: AgA1qF+SfJWK/3C6b/2koGQXBE6b1gYgTQaY4WWn0iJ+LJVKxr9EHsD7bT6C5YZ1j94j5bnBiEKaYV+2t3bSDzm+4SNa3nhNXg6kQHjFSrWLWEfp3mac54M81D5lC2S8xR/bsjA7Zfj3IFh1en1HRqJCH9IOy74un3j5L2pk3RBfhocGh7Gb3tN0pRwD9XYCRboiq9VJROceRfYfZfc/+KmVEJx+HhBojxnpV3qNk1ZyW8Z8118Zbgcnwu+G2nkB4jxlqjs4Vg1MpFqUgjtPwN4fB2rDAJUi8IE9oNcUgY8oYvjykVADjKYNeGCLpAJiavt5ecAZ2QHcQKOF5y0SO12/jBrr7ui3OLLxaxJYR90cNlf/Z9bXc76O/+e+TxYwZSp5KkVJBwUY9lbwTAEWcx5FTaE/HcRhOhb8/a5QSQSx47XVzq3lnj9q44GgT4OOedF7iDi6SOsjCtoJfA7/on4u992I6jj+rmugKbSKM4cyIwqC0M6sX4P7dLybelI7Gg/xRayK8xW7sGqfMvWyMzihFVgBr2q040OgrNhZXGBKHWCrjKjPCD7EkZ6YGeAjg3SOZPWIXbRYCB4eC7WzsjVh3/R+UIARRJx/4qtR1RBJ5pr2nvqt6k7anunYvjz1g+YgO7+YtnYH3psJHtGQVvNt6Fm+1O4dhre6N5OB5a6+UMZv2VprlTY9F19BaM/9PqLP2L9SF4qQNLd1hOeNs/Eo
|
||||
username: AgAFgnTF9ylA4j/ZTxdlLQXL+XM2HSil5fdFXsUmBkTvoMLEUVoUZICFXpbYbs7LP+12uo3OczZnWORW7HNQqOq8kEBYcNzmwtVJG5CS7Oh5ix5gI2RzXesNAqoPw2WVFVKxvjhqq/4QteZ+u1oxRscdLgmqDTznxGcOrl/qG7DYjnJmAbF/XA0r75a2mxsRGonIcn6NHuifrFxfrhQpzTrC3lApXLM8/S1qRE+x7V11i8AZDmOU2peUG6zfQxF39UHJZAFWwK3uuS/Ou7Pthcy00+ZH7DkGFrrNxTGV87KudhAw2F/Rq9Bo4p6B6wDji4bIChwZ4OF+mwwMnNR0+Jy7pnG9BeiVMP4FZ9uG2LY5kU7mOhcr71FLGcWiDAGpsPNUKJuyWPGfnwVanho9IR93eTot0oX33quf4gbYWiF19EyFX+ig6D7Rvf4svVkURa8UkwSa5vSbz+fKBVgwD5GB/XL/ZCTSldMEb7xVVGJ+p9vKRnIn0KyEjz60pEYXo0oRwlAAkhh2WLN3iRYP5NgpdX5J1ED40Gnz6yMqWyBzhVNRrFz+on4PGbEkhTvxmVQxJjbGzkh4sAcjrjqN2vlMNhXYNAGwBRDUvzJBJC4W1C8f6VZ7+1dVdXi3UQPo64coE+qAOH52ZyTXUXCcnhPLEZMgLNpdZ5pEEruhu2M5zVo5N1Pt9Fn36ie0WjIacz56VjpmZT8=
|
||||
template:
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: flexvolsmb-credentials
|
||||
namespace: pterodactyl
|
||||
type: mount/smb
|
19
services/Pterodactyl/sealedsecret-pterodactyl-db-secret.yaml
Normal file
19
services/Pterodactyl/sealedsecret-pterodactyl-db-secret.yaml
Normal file
@ -0,0 +1,19 @@
|
||||
apiVersion: bitnami.com/v1alpha1
|
||||
kind: SealedSecret
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: pterodactyl-db-secret
|
||||
namespace: pterodactyl
|
||||
spec:
|
||||
encryptedData:
|
||||
DB_PASSWORD: AgBPIDe8E4g5ue5RpQd1JSMOPevGn2vaQSttFx1GVhH8gYR7bBMXnTlpxtp6wkCM4Xpbsvc6I/eFMvEaIL5nkdD8Bv/R2OfWrHp5U0RNQwkRP5XyDwWSYSOlvAXh8aBAkiZCopv9P32QZl7EnOvx1wNexvhzaOolkSipMLBQ/T+Z6POI0EB1DaYYFgUEatjc10GwNIHOjAU3NKY3Ka3QoQXtIF5lkDlwz20jd/iKMCSJsi75eBIDhrHN5xsK8wenBMrSnxePTg0C+9L9bX17sqLZx7PQkrxRtNe+bWaFqD8tKnPC53IKYgagoK6S3YFgA5JMOTdcIoQwb9bKbH8Cg+/IBvToTcx7ofMq27Ed8cmvrn8yJeTazq1YzuWh1mfPLjTD3ioIrPeEzAEx4pacN4Rb/oaAUGjO99JmeyAHmGybCnDFfbYTqDILPrn/Jh25Dc6g3ORG7DIS6hIzsh2aWpAnJPGac52rhGQaDVQ6ED0ZcY9P2cygsZZDjrD3S1XBN8iuXU+Rl8c2dsd9E58jcgqpRwFGolP7e1s7PmjFRAiwx1+eUcF+6J9PbH51rq/4tjfju4CKP33Mzxs9D914p+4cWxjHDA7ODT0WV56AmLF/JjOhpbYAFjTrVJq4IXhv+AA4bbIyWCKjPCurTwVZTa8FgN7p6osmh1gwtczdj4lZ7z+gohgyQUPJgj/63R9O8CJSoI2Trq18WGod8g==
|
||||
MYSQL_PASSWORD: AgCJi0QiI9kent/cqJBkqV/BrjPnJensXD1Lpe0yINRdCLWO3N4B1LKDiaF3/ipEzJfsFhpJq5ViwlMaBNlBZEZiAtJHAgPHDqM0QzNClUCbZ0DlBfT2QrS3Gj8m/RA+aAZTym7iB2L/CtDOdAY8TDuLNOjT0psjAXuX4+KyjDIqSl0+6D4HBKJnagyhIboAoTvUam7vuENclG2VWdC0LBfIZCnjdMYWAR9CcZb8qSWnjWN9xK687crnaTKg8QClU+Uc84QcLzANfIDPspByfg6ZtBGeyZncinjkxqcupNnDgVe4bmPNh5qezaoHrt4YL6mfFjIOJq8ACe4Vdva4QZ3hLR7jw1SzQUgqJ6Jw2ZoesReEZ/G0qvsM22Pe829bpwTo2RT2sLxFTD8SJdVqL3kEbLcoahR0vqP4gWu5zd1T5qsI8iS6R+bkun8rLmXdEmLdiq4QaiAW8KAKP7OdS1XuynXw9BT06HaYKxjKHYG0J5g2eCQfTyk6koTsx4izKCS1j47cviNMNbBTK9vVInXVYomSnaIi9tynnWCjGoqgU8RpvFCusZ5KLCqBB1mjbEqtSLcU4VyFajF4ZngHTojUvkxTPM6y5mFaJclSrOoALNCzKthFvrmqq4kJFWw0AxELC5BnvNjtmRINJcYjQAMjGwsfV8Q48Xs3caz8BAuTYjNkYiZ6zBUiDzkA0UVYS+daaZ60i6DO5Tc27A==
|
||||
MYSQL_ROOT_PASSWORD: AgB6N26BSmytg/0yxLSnaQxTdhzqrYXTdqqPcno3D21gX+u2toMpH+8JPvSNn0tvr38SWgObepjgV1alSR1Ee6VFyhrWqg0SwPSpix7+aglMTKrUfGRazatNgxGG/5PJu4hMNaezvH5bCk5eGPEGVgFJhuwEPsdOusf3J+JsL0OW8Ly0v3t3Re44ADIAq9F9cCO/esT0gqMsrrVD61+ke5q4UrmsN0bcUDCA7rOp+M3gnA8KTXhFap0ZQbATx/7VMpGgRWlKHiHE4mNo+Kjcog0vCJlvLHOW+sguXH1S1LDrtfGmHvnTWu/FEw/MO4aXwzmSeK/BbxtdUjSizL9hwgil0tAoPjqtMJ3CQMlbHKrXjL3tNfAMlSPZt1jG6XeFQpTfem1WpxwbTmHPVgK/+Ps8b4kLF7dXAI8m1arK6QCqsZCiqo5ToSehDueAQUfjicWf/7i11YAgT6XhXBfKSBIBmS9Y4LOoakGBT5gctEEZi2i5pZaUSjuKjez/raw33LT6twOjeLpynO8KfOW1K9EGIUM9XDFc5LQciYAmeCHdU8nNSa1Pk/ZwKUPeG01V8NotvGJtV4pUl9POSY7x/hguEoz+n0w6nuIHAHBCoTo4iNu757wZDPn8QeJhTpYKJ2qR5gvYxoBOuLqaxr059X8TfakrLoCRxn5XTcyztXi63bR5/OWBRJ8ChPzhmSZZOfeS90Q3Tc4kpuIBDA==
|
||||
template:
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
app: pterodactyl
|
||||
name: pterodactyl-db-secret
|
||||
namespace: pterodactyl
|
||||
type: Opaque
|
18
services/Pterodactyl/service-pterodactyl.yaml
Normal file
18
services/Pterodactyl/service-pterodactyl.yaml
Normal file
@ -0,0 +1,18 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: pterodactyl
|
||||
namespace: pterodactyl
|
||||
spec:
|
||||
ports:
|
||||
- protocol: TCP
|
||||
name: web
|
||||
port: 80
|
||||
- protocol: TCP
|
||||
name: db
|
||||
port: 3306
|
||||
- protocol: TCP
|
||||
name: redis
|
||||
port: 6379
|
||||
selector:
|
||||
app: pterodactyl
|
Loading…
x
Reference in New Issue
Block a user