apiVersion: v1 kind: Namespace metadata: name: osticket --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mariadb-pvc namespace: osticket spec: accessModes: - ReadWriteOnce resources: requests: storage: 10Gi --- apiVersion: v1 kind: Service metadata: name: osticket-mariadb namespace: osticket spec: ports: - port: 3306 selector: app: mariadb --- apiVersion: apps/v1 kind: Deployment metadata: name: mariadb namespace: osticket spec: replicas: 1 selector: matchLabels: app: mariadb template: metadata: labels: app: mariadb spec: containers: - name: mariadb image: mariadb:10.6 env: - name: MYSQL_ROOT_PASSWORD value: "rootpassword" - name: MYSQL_DATABASE value: "osticket" - name: MYSQL_USER value: "osticket" - name: MYSQL_PASSWORD value: "osticketpassword" ports: - containerPort: 3306 volumeMounts: - name: mariadb-data mountPath: /var/lib/mysql volumes: - name: mariadb-data persistentVolumeClaim: claimName: mariadb-pvc --- apiVersion: v1 kind: Service metadata: name: osticket namespace: osticket spec: ports: - port: 80 selector: app: osticket --- apiVersion: apps/v1 kind: Deployment metadata: name: osticket namespace: osticket spec: replicas: 1 selector: matchLabels: app: osticket template: metadata: labels: app: osticket spec: containers: - name: osticket image: osticket/osticket:latest ports: - containerPort: 80 env: - name: DB_HOST value: "osticket-mariadb.osticket.svc.cluster.local" - name: DB_USER value: "osticket" - name: DB_PASSWORD value: "osticketpassword" - name: DB_NAME value: "osticket" volumeMounts: - name: osticket-data mountPath: /var/www/html volumes: - name: osticket-data persistentVolumeClaim: claimName: mariadb-pvc --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: osticket-pvc namespace: osticket spec: accessModes: - ReadWriteOnce resources: requests: storage: 10Gi