010-build-postfix.sh 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. #!/bin/bash
  2. . mailcow.conf
  3. NAME="postfix-mailcow"
  4. PDNS_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' pdns-mailcow 2> /dev/null)
  5. if [[ ! ${PDNS_IP} =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
  6. echo "Cannot determine Powerdns Recursor ip address. Is the container running?"
  7. exit 1
  8. fi
  9. echo "Stopping and removing containers with name tag ${NAME}..."
  10. if [[ ! -z $(docker ps -af "name=${NAME}" -q) ]]; then
  11. docker stop $(docker ps -af "name=${NAME}" -q)
  12. docker rm $(docker ps -af "name=${NAME}" -q)
  13. fi
  14. sed -i "/^user/c\user = ${DBUSER}" data/conf/postfix/sql/*
  15. sed -i "/^password/c\password = ${DBPASS}" data/conf/postfix/sql/*
  16. sed -i "/^dbname/c\dbname = ${DBNAME}" data/conf/postfix/sql/*
  17. docker run \
  18. -p ${SMTP_PORT}:25 \
  19. -p ${SMTPS_PORT}:465 \
  20. -p ${SUBMISSION_PORT}:587 \
  21. -v ${PWD}/data/conf/postfix:/opt/postfix/conf:ro \
  22. -v ${PWD}/data/assets/ssl:/etc/ssl/mail/:ro \
  23. --dns=${PDNS_IP} \
  24. --dns-search=${DOCKER_NETWORK} \
  25. --name ${NAME} \
  26. --network=${DOCKER_NETWORK} \
  27. --network-alias postfix \
  28. -h ${MAILCOW_HOSTNAME} \
  29. -d andryyy/mailcow-dockerized:postfix