forked from k-space/kube
		
	
		
			
				
	
	
		
			104 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			104 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
---
 | 
						|
apiVersion: v1
 | 
						|
kind: Service
 | 
						|
metadata:
 | 
						|
  name: wildduck-api
 | 
						|
spec:
 | 
						|
  selector:
 | 
						|
    app.kubernetes.io/name: wildduck
 | 
						|
    app.kubernetes.io/component: wildduck
 | 
						|
  ports:
 | 
						|
  - port: 8080
 | 
						|
    name: wildduck-api
 | 
						|
---
 | 
						|
apiVersion: apps/v1
 | 
						|
kind: Deployment
 | 
						|
metadata:
 | 
						|
  name: wildduck
 | 
						|
spec:
 | 
						|
  strategy:
 | 
						|
    type: Recreate
 | 
						|
  replicas: 2
 | 
						|
  selector:
 | 
						|
    matchLabels:
 | 
						|
      app.kubernetes.io/name: wildduck
 | 
						|
      app.kubernetes.io/component: wildduck
 | 
						|
  template:
 | 
						|
    metadata:
 | 
						|
      labels:
 | 
						|
        app.kubernetes.io/name: wildduck
 | 
						|
        app.kubernetes.io/component: wildduck
 | 
						|
    spec:
 | 
						|
      affinity:
 | 
						|
        podAntiAffinity:
 | 
						|
          requiredDuringSchedulingIgnoredDuringExecution:
 | 
						|
            - labelSelector:
 | 
						|
                matchExpressions:
 | 
						|
                  - key: app.kubernetes.io/name
 | 
						|
                    operator: In
 | 
						|
                    values:
 | 
						|
                      - wildduck
 | 
						|
                  - key: app.kubernetes.io/component
 | 
						|
                    operator: In
 | 
						|
                    values:
 | 
						|
                      - wildduck
 | 
						|
              topologyKey: topology.kubernetes.io/zone
 | 
						|
      containers:
 | 
						|
        - name: wildduck
 | 
						|
          image: mirror.gcr.io/nodemailer/wildduck:1@sha256:7f580d4b5a18cabf8b28f4bd791d5c1c16f278a83f05b99357064c50b7bfb6d5
 | 
						|
          ports:
 | 
						|
            - containerPort: 8080
 | 
						|
              name: wildduck-api
 | 
						|
            - containerPort: 9993
 | 
						|
              name: wildduck-mda
 | 
						|
          securityContext:
 | 
						|
            readOnlyRootFilesystem: true
 | 
						|
            runAsNonRoot: true
 | 
						|
            runAsUser: 1000
 | 
						|
          resources:
 | 
						|
            limits:
 | 
						|
              cpu: 500m
 | 
						|
              memory: 200Mi
 | 
						|
            requests:
 | 
						|
              cpu: 10m
 | 
						|
              memory: 100Mi
 | 
						|
          env:
 | 
						|
            - name: APPCONF_emailDomain
 | 
						|
              value: k-space.ee
 | 
						|
            - name: APPCONF_log_level
 | 
						|
              value: info
 | 
						|
            - name: APPCONF_maxForwards
 | 
						|
              value: "2000"
 | 
						|
            - name: APPCONF_hostname
 | 
						|
              value: mail.k-space.ee
 | 
						|
            - name: APPCONF_tls_key
 | 
						|
              value: /cert/tls.key
 | 
						|
            - name: APPCONF_tls_cert
 | 
						|
              value: /cert/tls.crt
 | 
						|
            - name: APPCONF_api_host
 | 
						|
              value: "0.0.0.0"
 | 
						|
            - name: APPCONF_api_accessToken
 | 
						|
              valueFrom:
 | 
						|
                secretKeyRef:
 | 
						|
                  name: wildduck
 | 
						|
                  key: WILDDUCK_API_TOKEN
 | 
						|
            - name: APPCONF_dbs_sender
 | 
						|
              value: wildduck
 | 
						|
            - name: APPCONF_dbs_mongo
 | 
						|
              valueFrom:
 | 
						|
                secretKeyRef:
 | 
						|
                  name: wildduck-mongodb
 | 
						|
                  key: MONGO_URI
 | 
						|
            - name: APPCONF_dbs_redis
 | 
						|
              valueFrom:
 | 
						|
                secretKeyRef:
 | 
						|
                  name: session-storage
 | 
						|
                  key: REDIS_WILDDUCK_URI
 | 
						|
          volumeMounts:
 | 
						|
            - mountPath: /cert
 | 
						|
              name: cert
 | 
						|
      volumes:
 | 
						|
        - name: cert
 | 
						|
          secret:
 | 
						|
            secretName: wildduck-tls
 |