Docker-mailserver: WIKI : Kubernetes version of malserver is outdated

Created on 14 Oct 2018  路  9Comments  路  Source: tomav/docker-mailserver

the version in Kubernetes manifest in the wiki is outdated ( V2.1 ) - it's need an upgrade for solve some bug

documentation help wanted

Most helpful comment

I've updated the deployment section of kubernetes wiki, because I have successful installed docker-mailserver on Kubernetes 1.17:

https://github.com/tomav/docker-mailserver/wiki/Using-in-Kubernetes

Exposing to internet and create of PV storage is something which the kubernetes admin should know for his installation. I would like to write the rest of the documentation, but my english is too poor.

All 9 comments

The wiki is still wrong. However, while I can change the version I can't verify that it works as I'm not running the mail server in K8s. Anyone with a working setup that can update (or suggest an update) for the wiki?

@erik-wramner I upgrade to stable, and encountered two issues. amvais is crashing and dovecot is crashing too. Attached is the log from the container not sure what is happening between 2.1 and the most recent stable

2019-12-18 06:55:59,464 INFO success: amavis entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2019-12-18 06:55:59,465 INFO spawned: 'dovecot' with pid 438
2019-12-18 06:55:59,522 INFO success: dovecot entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2019-12-18 06:55:59,523 INFO exited: dovecot (exit status 89; not expected)
2019-12-18 06:55:59,525 INFO spawned: 'dovecot' with pid 440
2019-12-18 06:55:59,582 INFO success: dovecot entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2019-12-18 06:55:59,582 INFO exited: dovecot (exit status 89; not expected)
2019-12-18 06:55:59,584 INFO spawned: 'dovecot' with pid 442
Dec 18 06:55:58 mailserver-6545c9bf67-lnrgx dovecot: master: Error: bind(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:58 mailserver-6545c9bf67-lnrgx dovecot: master: Error: service(auth): net_listen_unix(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:58 mailserver-6545c9bf67-lnrgx dovecot: master: Fatal: Failed to start listeners
Dec 18 06:55:58 mailserver-6545c9bf67-lnrgx dovecot: master: Error: bind(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:58 mailserver-6545c9bf67-lnrgx dovecot: master: Error: service(auth): net_listen_unix(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:58 mailserver-6545c9bf67-lnrgx dovecot: master: Fatal: Failed to start listeners
Dec 18 06:55:58 mailserver-6545c9bf67-lnrgx dovecot: master: Error: bind(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:58 mailserver-6545c9bf67-lnrgx dovecot: master: Error: service(auth): net_listen_unix(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:58 mailserver-6545c9bf67-lnrgx dovecot: master: Fatal: Failed to start listeners
Dec 18 06:55:58 mailserver-6545c9bf67-lnrgx dovecot: master: Error: bind(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:58 mailserver-6545c9bf67-lnrgx dovecot: master: Error: service(auth): net_listen_unix(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:58 mailserver-6545c9bf67-lnrgx dovecot: master: Fatal: Failed to start listeners
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx amavis[384]: starting. /usr/sbin/amavisd-new at mail.example.com amavisd-new-2.10.1 (20141025), Unicode aware
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: bind(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: service(auth): net_listen_unix(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Fatal: Failed to start listeners
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: bind(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: service(auth): net_listen_unix(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Fatal: Failed to start listeners
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: bind(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: service(auth): net_listen_unix(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Fatal: Failed to start listeners
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: bind(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: service(auth): net_listen_unix(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Fatal: Failed to start listeners
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx amavis[384]: (!)Net::Server: 2019/12/18-06:55:59 Can't connect to UNIX socket at file /var/lib/amavis/amavisd.sock [Unknown error 524]\n  at line 70 in file /usr/share/perl5/Net/Server/Proto/UNIX.pm
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: bind(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: service(auth): net_listen_unix(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Fatal: Failed to start listeners
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: bind(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: service(auth): net_listen_unix(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Fatal: Failed to start listeners
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: bind(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Error: service(auth): net_listen_unix(/var/spool/postfix/private/auth) failed: Unknown error 524
Dec 18 06:55:59 mailserver-6545c9bf67-lnrgx dovecot: master: Fatal: Failed to start listeners
2019-12-18 06:55:59,600 INFO success: dovecot entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2019-12-18 06:55:59,639 INFO exited: dovecot (exit status 89; not expected)
2019-12-18 06:55:59,642 INFO spawned: 'dovecot' with pid 444
2019-12-18 06:55:59,696 INFO success: dovecot entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2019-12-18 06:55:59,697 INFO exited: dovecot (exit status 89; not expected)
2019-12-18 06:56:00,378 INFO spawned: 'dovecot' with pid 453
2019-12-18 06:56:00,379 INFO exited: amavis (exit status 1; not expected)
2019-12-18 06:56:00,430 INFO spawned: 'amavis' with pid 455
2019-12-18 06:56:00,430 INFO success: dovecot entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2019-12-18 06:56:00,431 INFO exited: dovecot (exit status 89; not expected)
2019-12-18 06:56:00,432 INFO success: amavis entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2019-12-18 06:56:00,434 INFO spawned: 'dovecot' with pid 456
2019-12-18 06:56:00,490 INFO success: dovecot entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2019-12-18 06:56:00,490 INFO exited: dovecot (exit status 89; not expected)
2019-12-18 06:56:00,493 INFO spawned: 'dovecot' with pid 458
2019-12-18 06:56:00,538 INFO success: dovecot entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2019-12-18 06:56:00,538 INFO exited: dovecot (exit status 89; not expected)
2019-12-18 06:56:00,540 INFO spawned: 'dovecot' with pid 460
2019-12-18 06:56:00,596 INFO success: dovecot entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2019-12-18 06:56:00,597 INFO exited: dovecot (exit status 89; not expected)
2019-12-18 06:56:00,599 INFO spawned: 'dovecot' with pid 462

Hm, 2.1 is from 2016 and the current stable is 6.2 from 2019, so a lot has changed. I hope you have a good backup! How about if you make a clean install (no old config files that may be incompatible) with 6.2, does that work? If it does one option could be to do just that; upgrade and import the old mail folders and accounts and aliases.

@erik-wramner don't worry its a clean install using the manifests in the Kubernetes in the wiki. So basically the manifests there are broken with 6.2. The Kubernetes manifest need to be update to work with 6.2 I am guessing.

Right, something to look into then!

Here is a part of Kubernetes deployment for a first try to run 6.2.x. It use PV's and "mailserver" namepace. Don't know why "OVERRIDE_HOSTNAME" is needed.
One need to change the configmap as well. Tried with Kubernetes 1.17:

kind: Service
apiVersion: v1
metadata:
  name: mailserver
  namespace: mailserver
  labels:
    app: mailserver
spec:
  selector:
    app: mailserver
  ports:
    - name: smtp
      port: 25
      targetPort: smtp
    - name: smtp-auth
      port: 587
      targetPort: smtp-auth
    - name: imap-secure
      port: 993
      targetPort: imap-secure
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: mailserver
  namespace: mailserver
spec:
  replicas: 1
  selector:
    matchLabels:
      app: mailserver
  template:
    metadata:
      labels:
        app: mailserver
        role: mail
        tier: backend
    spec:
      containers:
      - name: smtp
        image: tvial/docker-mailserver:release-v6.2.1
        imagePullPolicy: Always
        volumeMounts:
          - name: config
            subPath: postfix-accounts.cf
            mountPath: /tmp/docker-mailserver/postfix-accounts.cf
            readOnly: true
          - name: config
            subPath: postfix-virtual.cf
            mountPath: /tmp/docker-mailserver/postfix-virtual.cf
            readOnly: true
          - name: config
            subPath: fetchmail.cf
            mountPath: /tmp/docker-mailserver/fetchmail.cf
            readOnly: true
          - name: config
            subPath: SigningTable
            mountPath: /tmp/docker-mailserver/opendkim/SigningTable
            readOnly: true
          - name: config
            subPath: KeyTable
            mountPath: /tmp/docker-mailserver/opendkim/KeyTable
            readOnly: true
          - name: config
            subPath: TrustedHosts
            mountPath: /tmp/docker-mailserver/opendkim/TrustedHosts
            readOnly: true
          - name: opendkim-keys
            mountPath: /tmp/docker-mailserver/opendkim/keys
            readOnly: true
          - name: data
            mountPath: /var/mail
            subPath: data
          - name: data
            mountPath: /var/mail-state
            subPath: state
          - name: data
            mountPath: /var/log/mail
            subPath: log
        ports:
          - name: smtp
            containerPort: 25
            protocol: TCP
          - name: smtp-auth
            containerPort: 587
            protocol: TCP
          - name: imap-secure
            containerPort: 993
            protocol: TCP
        env:
          - name: OVERRIDE_HOSTNAME
            value: mail.example.local
          - name: ENABLE_SPAMASSASSIN
            value: "0"
          - name: ENABLE_CLAMAV
            value: "0"
          - name: ENABLE_FAIL2BAN
            value: "0"
          - name: ENABLE_POSTGREY
            value: "0"
          - name: ONE_DIR
            value: "1"
          - name: DMS_DEBUG
            value: "0"
      volumes:
        - name: config
          configMap:
            name: mailserver.config
        - name: opendkim-keys
          secret:
            secretName: mailserver.opendkim.keys
        - name: data
          persistentVolumeClaim:
            claimName: mail-storage

I've updated the deployment section of kubernetes wiki, because I have successful installed docker-mailserver on Kubernetes 1.17:

https://github.com/tomav/docker-mailserver/wiki/Using-in-Kubernetes

Exposing to internet and create of PV storage is something which the kubernetes admin should know for his installation. I would like to write the rest of the documentation, but my english is too poor.

@remoe I disagree, your English seems fine. But if you like, post it here, mention me, I'll read it.

I'm closing this off due to age/inactivity. The main work was done and k8s 1.17 is reasonably recent.

Was this page helpful?
0 / 5 - 0 ratings