cluster

Infrastructure files for Nordgedanken and Midnightthoughts.
git clone git://archive.git.mtrnord.blog/MTRNord/cluster.git
Log | Files | Refs | README

deployment.yaml (3252B)


      1 apiVersion: apps/v1
      2 kind: Deployment
      3 metadata:
      4   name: mediawiki
      5   namespace: mediawiki
      6 spec:
      7   replicas: 1
      8   selector:
      9     matchLabels:
     10       app: mediawiki
     11   template:
     12     metadata:
     13       labels:
     14         app: mediawiki
     15     spec:
     16       automountServiceAccountToken: false
     17       securityContext:
     18         fsGroup: 33
     19       containers:
     20         - name: mediawiki
     21           image: registry.midnightthoughts.space/mtrnord/mediawiki:1.45.3 # {"$imagepolicy": "flux-system:mediawiki"}
     22           imagePullPolicy: Always
     23           securityContext:
     24             allowPrivilegeEscalation: false
     25             readOnlyRootFilesystem: false
     26             runAsNonRoot: false
     27             seccompProfile:
     28               type: RuntimeDefault
     29           env:
     30             - name: MW_DB_NAME
     31               valueFrom:
     32                 secretKeyRef:
     33                   name: mediawiki-cred
     34                   key: db-name
     35             - name: MW_DB_USER
     36               valueFrom:
     37                 secretKeyRef:
     38                   name: mediawiki-cred
     39                   key: username
     40             - name: MW_DB_PASSWORD
     41               valueFrom:
     42                 secretKeyRef:
     43                   name: mediawiki-cred
     44                   key: password
     45             - name: MW_SECRET_KEY
     46               valueFrom:
     47                 secretKeyRef:
     48                   name: mediawiki-cred
     49                   key: wg-secret-key
     50             - name: MW_UPGRADE_KEY
     51               valueFrom:
     52                 secretKeyRef:
     53                   name: mediawiki-cred
     54                   key: wg-upgrade-key
     55             - name: MW_SMTP_PASSWORD
     56               valueFrom:
     57                 secretKeyRef:
     58                   name: mediawiki-cred
     59                   key: smtp-password
     60           volumeMounts:
     61             - name: mediawiki-config
     62               mountPath: /var/www/html/LocalSettings.php
     63               subPath: LocalSettings.php
     64               readOnly: true
     65             - name: mediawiki-config
     66               mountPath: /var/www/html/robots.txt
     67               subPath: robots.txt
     68               readOnly: true
     69             - name: mediawiki-images
     70               mountPath: /var/www/html/images
     71           resources:
     72             requests:
     73               memory: "256Mi"
     74               cpu: "100m"
     75             limits:
     76               memory: "512Mi"
     77               cpu: "500m"
     78           livenessProbe:
     79             httpGet:
     80               path: /api.php?action=query&meta=siteinfo&format=json
     81               port: 80
     82             initialDelaySeconds: 60
     83             periodSeconds: 30
     84             timeoutSeconds: 10
     85             failureThreshold: 3
     86           readinessProbe:
     87             httpGet:
     88               path: /api.php?action=query&meta=siteinfo&format=json
     89               port: 80
     90             initialDelaySeconds: 30
     91             periodSeconds: 15
     92             timeoutSeconds: 10
     93             failureThreshold: 3
     94       volumes:
     95         - name: mediawiki-config
     96           configMap:
     97             name: mediawiki-config
     98         - name: mediawiki-images
     99           persistentVolumeClaim:
    100             claimName: mediawiki-images
    101 ---
    102 apiVersion: v1
    103 kind: Service
    104 metadata:
    105   name: mediawiki
    106   namespace: mediawiki
    107 spec:
    108   type: ClusterIP
    109   selector:
    110     app: mediawiki
    111   ports:
    112     - protocol: TCP
    113       port: 80
    114       targetPort: 80