diff --git a/mediawiki/mediawiki-deployment.yaml b/mediawiki/mediawiki-deployment.yaml new file mode 100644 index 0000000..d7d90c3 --- /dev/null +++ b/mediawiki/mediawiki-deployment.yaml @@ -0,0 +1,89 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + run: mediawiki + name: mediawiki +spec: + replicas: 1 + selector: + matchLabels: + run: mediawiki + template: + metadata: + labels: + run: mediawiki + spec: + containers: + - image: mediawiki:latest + name: mediawiki-web + ports: + - containerPort: 80 + resources: {} + volumeMounts: + - mountPath: /var/www/html/images + name: wiki-img + - mountPath: /var/www/html/LocalSettings.php + subPath: LocalSettings.php + name: wiki-set + - mountPath: /var/www/html/skins + name: wiki-skins + - mountPath: /var/www/html/extensions + name: wiki-ext + restartPolicy: Always + volumes: + - name: wiki-img + persistentVolumeClaim: + claimName: wiki-img + - name: wiki-set + persistentVolumeClaim: + claimName: wiki-set + - name: wiki-skins + persistentVolumeClaim: + claimName: wiki-skins + - name: wiki-ext + persistentVolumeClaim: + claimName: wiki-ext + + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + run: mediawikidb + name: mediawikidb +spec: + replicas: 1 + selector: + matchLabels: + run: mediawikidb + template: + metadata: + labels: + run: mediawikidb + spec: + containers: + - env: + - name: MYSQL_DATABASE + value: mediawiki + - name: MYSQL_PASSWORD + value: eez7quaec7Ni + - name: MYSQL_RANDOM_ROOT_PASSWORD + value: "no" + - name: MYSQL_ROOT_PASSWORD + value: qzkdngin0988 + - name: MYSQL_USER + value: mediawiki + image: mariadb:latest + name: mediawikidb + resources: {} + volumeMounts: + - mountPath: /var/lib/mysql + name: db-data + restartPolicy: Always + volumes: + - name: db-data + persistentVolumeClaim: + claimName: db-data + diff --git a/mediawiki/mediawiki-ingress.yaml b/mediawiki/mediawiki-ingress.yaml new file mode 100644 index 0000000..10aac8a --- /dev/null +++ b/mediawiki/mediawiki-ingress.yaml @@ -0,0 +1,18 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: mediawiki-ingr +spec: + ingressClassName: nginx + rules: + - host: wiki.squi.fr + http: + paths: + - pathType: Prefix + backend: + service: + name: mediawiki + port: + number: 80 + path: / + diff --git a/mediawiki/mediawiki-pvc.yaml b/mediawiki/mediawiki-pvc.yaml new file mode 100644 index 0000000..db6b7b8 --- /dev/null +++ b/mediawiki/mediawiki-pvc.yaml @@ -0,0 +1,68 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: wiki-ext +spec: + accessModes: + - ReadWriteOnce + storageClassName: "" + resources: + requests: + storage: 10Gi + volumeName: wiki-ext + +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: wiki-img +spec: + accessModes: + - ReadWriteOnce + storageClassName: "" + resources: + requests: + storage: 60Gi + volumeName: wiki-img + +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: wiki-set +spec: + accessModes: + - ReadWriteOnce + storageClassName: "" + resources: + requests: + storage: 10Gi + volumeName: wiki-set + +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: wiki-skins +spec: + accessModes: + - ReadWriteOnce + storageClassName: "" + resources: + requests: + storage: 10Gi + volumeName: wiki-skins + +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: db-data +spec: + accessModes: + - ReadWriteOnce + storageClassName: "" + resources: + requests: + storage: 60Gi + volumeName: db-data diff --git a/mediawiki/mediawiki-service.yaml b/mediawiki/mediawiki-service.yaml new file mode 100644 index 0000000..b52f802 --- /dev/null +++ b/mediawiki/mediawiki-service.yaml @@ -0,0 +1,13 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + run: mediawiki + name: mediawiki +spec: + ports: + - name: "http" + port: 80 + targetPort: 80 + selector: + run: mediawiki diff --git a/mediawiki/mediawiki-volumeclaims.yaml b/mediawiki/mediawiki-volumeclaims.yaml new file mode 100644 index 0000000..f5734a0 --- /dev/null +++ b/mediawiki/mediawiki-volumeclaims.yaml @@ -0,0 +1,81 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: wiki-img +spec: + capacity: + storage: 60Gi + accessModes: + - ReadWriteOnce + nfs: + server: nas.sq.lan + path: "/swarmdata/mediawiki/images" + mountOptions: + - nfsvers=4.2 + +--- +apiVersion: v1 +kind: PersistentVolume +metadata: + name: wiki-set +spec: + capacity: + storage: 10Gi + accessModes: + - ReadWriteOnce + nfs: + server: nas.sq.lan + path: "/swarmdata/mediawiki/" + mountOptions: + - nfsvers=4.2 + +--- +apiVersion: v1 +kind: PersistentVolume +metadata: + name: wiki-skins +spec: + capacity: + storage: 10Gi + accessModes: + - ReadWriteOnce + nfs: + server: nas.sq.lan + path: "/swarmdata/mediawiki/skins" + mountOptions: + - nfsvers=4.2 + +--- +apiVersion: v1 +kind: PersistentVolume +metadata: + name: wiki-ext +spec: + capacity: + storage: 10Gi + accessModes: + - ReadWriteOnce + nfs: + server: nas.sq.lan + path: "/swarmdata/mediawiki/extensions" + mountOptions: + - nfsvers=4.2 + +--- +apiVersion: v1 +kind: PersistentVolume +metadata: + name: db-data +spec: + capacity: + storage: 60Gi + accessModes: + - ReadWriteOnce + nfs: + server: nas.sq.lan + path: "/swarmdata/mediawiki/database" + mountOptions: + - nfsvers=4.2 + + + diff --git a/mediawiki/mediawikidb-service.yaml b/mediawiki/mediawikidb-service.yaml new file mode 100644 index 0000000..e5f8eef --- /dev/null +++ b/mediawiki/mediawikidb-service.yaml @@ -0,0 +1,13 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + run: mediawikidb + name: mediawikidb +spec: + ports: + - name: "mysql" + port: 3306 + targetPort: 3306 + selector: + run: mediawikidb