apiVersion: v1 items: - apiVersion: apps/v1 kind: Deployment metadata: annotations: deployment.kubernetes.io/revision: "3" kubectl.kubernetes.io/last-applied-configuration: | {"apiVersion":"apps/v1","kind":"Deployment","metadata":{"annotations":{},"name":"bookstack-web","namespace":"bookstack-db"},"spec":{"replicas":1,"selector":{"matchLabels":{"app":"bookstack-web"}},"template":{"metadata":{"labels":{"app":"bookstack-web"}},"spec":{"containers":[{"env":[{"name":"PUID","value":"1000"},{"name":"PGID","value":"1000"},{"name":"TZ","value":"Europe/London"},{"name":"APP_URL","value":"https://wiki.needlestack.boo"},{"name":"APP_KEY","value":"base64:Jng4M2tkbXNleXBoYWRmZ2g0NTZqYm5tY3YxMjM0NTY="},{"name":"DB_HOST","value":"10.43.161.65"},{"name":"DB_PORT","value":"3306"},{"name":"DB_USER","value":"bookstack"},{"name":"DB_PASS","value":"Bar07ney!"},{"name":"DB_DATABASE","value":"bookstack"}],"image":"docker.io/linuxserver/bookstack:latest","name":"bookstack","ports":[{"containerPort":80,"name":"http"}],"volumeMounts":[{"mountPath":"/config","name":"bookstack-config"}]}],"dnsConfig":{"nameservers":["1.1.1.1","8.8.8.8"]},"dnsPolicy":"None","volumes":[{"name":"bookstack-config","persistentVolumeClaim":{"claimName":"bookstack-config-pvc"}}]}}}} creationTimestamp: "2026-09-12T20:44:04Z" generation: 5 name: bookstack-web namespace: bookstack-db resourceVersion: "851484" uid: 714317b1-19be-4e10-ba0d-7fbf23bae864 spec: progressDeadlineSeconds: 600 replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: app: bookstack-web strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: annotations: kubectl.kubernetes.io/restartedAt: "2026-09-12T21:36:57Z" creationTimestamp: null labels: app: bookstack-web spec: containers: - env: - name: PUID value: "1000" - name: PGID value: "1000" - name: TZ value: Europe/London - name: APP_URL value: https://wiki.needlestack.boo - name: APP_KEY value: base64:Jng4M2tkbXNleXBoYWRmZ2g0NTZqYm5tY3YxMjM0NTY= - name: DB_HOST value: 10.43.161.65 - name: DB_PORT value: "3306" - name: DB_USER value: bookstack - name: DB_PASS value: Bar07ney! - name: DB_DATABASE value: bookstack image: docker.io/linuxserver/bookstack:latest imagePullPolicy: Always name: bookstack ports: - containerPort: 80 name: http protocol: TCP resources: {} terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /config name: bookstack-config dnsConfig: nameservers: - 1.1.1.1 - 8.8.8.8 dnsPolicy: None restartPolicy: Always schedulerName: default-scheduler securityContext: {} terminationGracePeriodSeconds: 30 volumes: - name: bookstack-config persistentVolumeClaim: claimName: bookstack-config-pvc status: availableReplicas: 1 conditions: - lastTransitionTime: "2026-09-12T20:44:04Z" lastUpdateTime: "2026-09-12T21:39:25Z" message: ReplicaSet "bookstack-web-74b9c9c799" has successfully progressed. reason: NewReplicaSetAvailable status: "True" type: Progressing - lastTransitionTime: "2026-09-12T21:40:00Z" lastUpdateTime: "2026-09-12T21:40:00Z" message: Deployment has minimum availability. reason: MinimumReplicasAvailable status: "True" type: Available observedGeneration: 5 readyReplicas: 1 replicas: 1 updatedReplicas: 1 - apiVersion: apps/v1 kind: Deployment metadata: annotations: deployment.kubernetes.io/revision: "1" kubectl.kubernetes.io/last-applied-configuration: | {"apiVersion":"apps/v1","kind":"Deployment","metadata":{"annotations":{},"name":"mariadb","namespace":"bookstack-db"},"spec":{"replicas":1,"selector":{"matchLabels":{"app":"mariadb"}},"template":{"metadata":{"labels":{"app":"mariadb"}},"spec":{"containers":[{"env":[{"name":"MARIADB_ROOT_PASSWORD","value":"nstBar07ney!"},{"name":"MARIADB_DATABASE","value":"bookstack"},{"name":"MARIADB_USER","value":"bookstack"},{"name":"MARIADB_PASSWORD","value":"Bar07ney!"}],"image":"docker.io/library/mariadb:10.11","name":"mariadb","ports":[{"containerPort":3306,"name":"mysql"}],"volumeMounts":[{"mountPath":"/var/lib/mysql","name":"mariadb-storage"}]}],"dnsConfig":{"nameservers":["1.1.1.1","8.8.8.8"]},"dnsPolicy":"None","volumes":[{"name":"mariadb-storage","persistentVolumeClaim":{"claimName":"mariadb-data-pvc"}}]}}}} creationTimestamp: "2026-09-12T20:39:27Z" generation: 1 name: mariadb namespace: bookstack-db resourceVersion: "834544" uid: 9a81a32b-2079-43ee-8394-643027df3986 spec: progressDeadlineSeconds: 600 replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: app: mariadb strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: creationTimestamp: null labels: app: mariadb spec: containers: - env: - name: MARIADB_ROOT_PASSWORD value: nstBar07ney! - name: MARIADB_DATABASE value: bookstack - name: MARIADB_USER value: bookstack - name: MARIADB_PASSWORD value: Bar07ney! image: docker.io/library/mariadb:10.11 imagePullPolicy: IfNotPresent name: mariadb ports: - containerPort: 3306 name: mysql protocol: TCP resources: {} terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /var/lib/mysql name: mariadb-storage dnsConfig: nameservers: - 1.1.1.1 - 8.8.8.8 dnsPolicy: None restartPolicy: Always schedulerName: default-scheduler securityContext: {} terminationGracePeriodSeconds: 30 volumes: - name: mariadb-storage persistentVolumeClaim: claimName: mariadb-data-pvc status: availableReplicas: 1 conditions: - lastTransitionTime: "2026-09-12T20:40:01Z" lastUpdateTime: "2026-09-12T20:40:01Z" message: Deployment has minimum availability. reason: MinimumReplicasAvailable status: "True" type: Available - lastTransitionTime: "2026-09-12T20:39:27Z" lastUpdateTime: "2026-09-12T20:40:01Z" message: ReplicaSet "mariadb-6fcf465cc4" has successfully progressed. reason: NewReplicaSetAvailable status: "True" type: Progressing observedGeneration: 1 readyReplicas: 1 replicas: 1 updatedReplicas: 1 - apiVersion: v1 kind: PersistentVolumeClaim metadata: annotations: kubectl.kubernetes.io/last-applied-configuration: | {"apiVersion":"v1","kind":"PersistentVolumeClaim","metadata":{"annotations":{},"name":"bookstack-config-pvc","namespace":"bookstack-db"},"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"10Gi"}},"storageClassName":"longhorn"}} pv.kubernetes.io/bind-completed: "yes" pv.kubernetes.io/bound-by-controller: "yes" volume.beta.kubernetes.io/storage-provisioner: driver.longhorn.io volume.kubernetes.io/storage-provisioner: driver.longhorn.io creationTimestamp: "2026-09-12T20:44:04Z" finalizers: - kubernetes.io/pvc-protection name: bookstack-config-pvc namespace: bookstack-db resourceVersion: "835762" uid: b9ed0926-9879-4ddd-885e-0948cd48ce3f spec: accessModes: - ReadWriteOnce resources: requests: storage: 10Gi storageClassName: longhorn volumeMode: Filesystem volumeName: pvc-b9ed0926-9879-4ddd-885e-0948cd48ce3f status: accessModes: - ReadWriteOnce capacity: storage: 10Gi phase: Bound - apiVersion: v1 kind: PersistentVolumeClaim metadata: annotations: kubectl.kubernetes.io/last-applied-configuration: | {"apiVersion":"v1","kind":"PersistentVolumeClaim","metadata":{"annotations":{},"name":"mariadb-data-pvc","namespace":"bookstack-db"},"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"10Gi"}},"storageClassName":"longhorn"}} pv.kubernetes.io/bind-completed: "yes" pv.kubernetes.io/bound-by-controller: "yes" volume.beta.kubernetes.io/storage-provisioner: driver.longhorn.io volume.kubernetes.io/storage-provisioner: driver.longhorn.io creationTimestamp: "2026-09-12T20:39:27Z" finalizers: - kubernetes.io/pvc-protection name: mariadb-data-pvc namespace: bookstack-db resourceVersion: "834328" uid: b87615cd-7e29-4522-995d-4e2cd1144a0a spec: accessModes: - ReadWriteOnce resources: requests: storage: 10Gi storageClassName: longhorn volumeMode: Filesystem volumeName: pvc-b87615cd-7e29-4522-995d-4e2cd1144a0a status: accessModes: - ReadWriteOnce capacity: storage: 10Gi phase: Bound - apiVersion: v1 kind: Service metadata: annotations: kubectl.kubernetes.io/last-applied-configuration: | {"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"name":"bookstack-web-service","namespace":"bookstack-db"},"spec":{"ports":[{"port":80,"targetPort":80}],"selector":{"app":"bookstack-web"}}} creationTimestamp: "2026-09-12T20:44:04Z" name: bookstack-web-service namespace: bookstack-db resourceVersion: "835699" uid: 7df0e394-c2d0-482a-8212-be0a74bf20af spec: clusterIP: 10.43.136.41 clusterIPs: - 10.43.136.41 internalTrafficPolicy: Cluster ipFamilies: - IPv4 ipFamilyPolicy: SingleStack ports: - port: 80 protocol: TCP targetPort: 80 selector: app: bookstack-web sessionAffinity: None type: ClusterIP status: loadBalancer: {} - apiVersion: v1 kind: Service metadata: annotations: kubectl.kubernetes.io/last-applied-configuration: | {"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"name":"mariadb-service","namespace":"bookstack-db"},"spec":{"ports":[{"port":3306}],"selector":{"app":"mariadb"}}} creationTimestamp: "2026-09-12T20:39:27Z" name: mariadb-service namespace: bookstack-db resourceVersion: "834266" uid: 3ec5d3ac-c8a8-474a-a21a-2db1ced6c503 spec: clusterIP: 10.43.161.65 clusterIPs: - 10.43.161.65 internalTrafficPolicy: Cluster ipFamilies: - IPv4 ipFamilyPolicy: SingleStack ports: - port: 3306 protocol: TCP targetPort: 3306 selector: app: mariadb sessionAffinity: None type: ClusterIP status: loadBalancer: {} kind: List metadata: resourceVersion: ""