Bladeren bron

Remove DNS recursor

andryyy 8 jaren geleden
bovenliggende
commit
92e2999dc0
1 gewijzigde bestanden met toevoegingen van 32 en 51 verwijderingen
  1. 32 51
      docker-compose.yml

+ 32 - 51
docker-compose.yml

@@ -1,20 +1,5 @@
 version: '2.1'
 version: '2.1'
 services:
 services:
-    bind9-mailcow:
-      image: resystit/bind9
-      command: "named -c /etc/bind/named.conf -g -u named"
-      depends_on:
-        mysql-mailcow:
-          condition: service_healthy
-      volumes:
-        - ./data/conf/bind9/named.conf:/etc/bind/named.conf
-      restart: always
-      networks:
-        mailcow-network:
-          ipv4_address: 172.22.1.254
-          aliases:
-            - bind9
-
     mysql-mailcow:
     mysql-mailcow:
       image: mariadb:10.1
       image: mariadb:10.1
       healthcheck:
       healthcheck:
@@ -25,9 +10,6 @@ services:
       volumes:
       volumes:
         - mysql-vol-1:/var/lib/mysql/
         - mysql-vol-1:/var/lib/mysql/
         - ./data/conf/mysql/:/etc/mysql/conf.d/:ro
         - ./data/conf/mysql/:/etc/mysql/conf.d/:ro
-      dns:
-        - 172.22.1.254
-      dns_search: mailcow-network
       environment:
       environment:
         - MYSQL_ROOT_PASSWORD=${DBROOT}
         - MYSQL_ROOT_PASSWORD=${DBROOT}
         - MYSQL_DATABASE=${DBNAME}
         - MYSQL_DATABASE=${DBNAME}
@@ -42,13 +24,11 @@ services:
     redis-mailcow:
     redis-mailcow:
       image: redis:alpine
       image: redis:alpine
       depends_on:
       depends_on:
-        - bind9-mailcow
+        mysql-mailcow:
+          condition: service_healthy
       volumes:
       volumes:
         - redis-vol-1:/data/
         - redis-vol-1:/data/
       restart: always
       restart: always
-      dns:
-        - 172.22.1.254
-      dns_search: mailcow-network
       networks:
       networks:
         mailcow-network:
         mailcow-network:
           aliases:
           aliases:
@@ -58,9 +38,6 @@ services:
       image: mailcow/clamd
       image: mailcow/clamd
       build: ./data/Dockerfiles/clamav
       build: ./data/Dockerfiles/clamav
       restart: always
       restart: always
-      dns:
-        - 172.22.1.254
-      dns_search: mailcow-network
       networks:
       networks:
         mailcow-network:
         mailcow-network:
           aliases:
           aliases:
@@ -85,9 +62,6 @@ services:
         - rspamd-vol-1:/var/lib/rspamd
         - rspamd-vol-1:/var/lib/rspamd
       restart: always
       restart: always
       hostname: rspamd
       hostname: rspamd
-      dns:
-        - 172.22.1.254
-      dns_search: mailcow-network
       networks:
       networks:
         mailcow-network:
         mailcow-network:
           ipv4_address: 172.22.1.253
           ipv4_address: 172.22.1.253
@@ -99,15 +73,11 @@ services:
       build: ./data/Dockerfiles/php-fpm
       build: ./data/Dockerfiles/php-fpm
       command: "php-fpm -d date.timezone=${TZ}"
       command: "php-fpm -d date.timezone=${TZ}"
       depends_on:
       depends_on:
-        - bind9-mailcow
         - redis-mailcow
         - redis-mailcow
       volumes:
       volumes:
         - ./data/web:/web:ro
         - ./data/web:/web:ro
         - ./data/conf/rspamd/dynmaps:/dynmaps:ro
         - ./data/conf/rspamd/dynmaps:/dynmaps:ro
         - dkim-vol-1:/data/dkim
         - dkim-vol-1:/data/dkim
-      dns:
-        - 172.22.1.254
-      dns_search: mailcow-network
       environment:
       environment:
         - DBNAME=${DBNAME}
         - DBNAME=${DBNAME}
         - DBUSER=${DBUSER}
         - DBUSER=${DBUSER}
@@ -123,15 +93,13 @@ services:
       image: mailcow/sogo
       image: mailcow/sogo
       build: ./data/Dockerfiles/sogo
       build: ./data/Dockerfiles/sogo
       depends_on:
       depends_on:
-        - bind9-mailcow
+        mysql-mailcow:
+          condition: service_healthy
       environment:
       environment:
         - DBNAME=${DBNAME}
         - DBNAME=${DBNAME}
         - DBUSER=${DBUSER}
         - DBUSER=${DBUSER}
         - DBPASS=${DBPASS}
         - DBPASS=${DBPASS}
         - TZ=${TZ}
         - TZ=${TZ}
-      dns:
-        - 172.22.1.254
-      dns_search: mailcow-network
       volumes:
       volumes:
         - ./data/conf/sogo/:/etc/sogo/
         - ./data/conf/sogo/:/etc/sogo/
       restart: always
       restart: always
@@ -145,7 +113,8 @@ services:
       image: mailcow/dovecot
       image: mailcow/dovecot
       build: ./data/Dockerfiles/dovecot
       build: ./data/Dockerfiles/dovecot
       depends_on:
       depends_on:
-        - bind9-mailcow
+        mysql-mailcow:
+          condition: service_healthy
       volumes:
       volumes:
         - ./data/conf/dovecot:/usr/local/etc/dovecot
         - ./data/conf/dovecot:/usr/local/etc/dovecot
         - ./data/assets/ssl:/etc/ssl/mail/:ro
         - ./data/assets/ssl:/etc/ssl/mail/:ro
@@ -162,9 +131,6 @@ services:
         - "${POP_PORT:-110}:110"
         - "${POP_PORT:-110}:110"
         - "${POPS_PORT:-995}:995"
         - "${POPS_PORT:-995}:995"
         - "${SIEVE_PORT:-4190}:4190"
         - "${SIEVE_PORT:-4190}:4190"
-      dns:
-        - 172.22.1.254
-      dns_search: mailcow-network
       restart: always
       restart: always
       hostname: ${MAILCOW_HOSTNAME}
       hostname: ${MAILCOW_HOSTNAME}
       networks:
       networks:
@@ -176,7 +142,8 @@ services:
       image: mailcow/postfix
       image: mailcow/postfix
       build: ./data/Dockerfiles/postfix
       build: ./data/Dockerfiles/postfix
       depends_on:
       depends_on:
-        - bind9-mailcow
+        mysql-mailcow:
+          condition: service_healthy
       volumes:
       volumes:
         - ./data/conf/postfix:/opt/postfix/conf
         - ./data/conf/postfix:/opt/postfix/conf
         - ./data/assets/ssl:/etc/ssl/mail/:ro
         - ./data/assets/ssl:/etc/ssl/mail/:ro
@@ -192,9 +159,6 @@ services:
         - "${SUBMISSION_PORT:-587}:587"
         - "${SUBMISSION_PORT:-587}:587"
       restart: always
       restart: always
       hostname: ${MAILCOW_HOSTNAME}
       hostname: ${MAILCOW_HOSTNAME}
-      dns:
-        - 172.22.1.254
-      dns_search: mailcow-network
       networks:
       networks:
         mailcow-network:
         mailcow-network:
           aliases:
           aliases:
@@ -203,11 +167,9 @@ services:
     memcached-mailcow:
     memcached-mailcow:
       image: memcached:alpine
       image: memcached:alpine
       depends_on:
       depends_on:
-        - bind9-mailcow
+        mysql-mailcow:
+          condition: service_healthy
       restart: always
       restart: always
-      dns:
-        - 172.22.1.254
-      dns_search: mailcow-network
       networks:
       networks:
         mailcow-network:
         mailcow-network:
           aliases:
           aliases:
@@ -236,9 +198,6 @@ services:
         - ./data/conf/rspamd/dynmaps:/dynmaps:ro
         - ./data/conf/rspamd/dynmaps:/dynmaps:ro
         - ./data/assets/ssl/:/etc/ssl/mail/:ro
         - ./data/assets/ssl/:/etc/ssl/mail/:ro
         - ./data/conf/nginx/:/etc/nginx/conf.d/:rw
         - ./data/conf/nginx/:/etc/nginx/conf.d/:rw
-      dns:
-        - 172.22.1.254
-      dns_search: mailcow-network
       ports:
       ports:
         - "${HTTPS_BIND:-0.0.0.0}:${HTTPS_PORT:-443}:${HTTPS_PORT:-443}"
         - "${HTTPS_BIND:-0.0.0.0}:${HTTPS_PORT:-443}:${HTTPS_PORT:-443}"
         - "${HTTP_BIND:-127.0.0.1}:${HTTP_PORT:-80}:${HTTP_PORT:-80}"
         - "${HTTP_BIND:-127.0.0.1}:${HTTP_PORT:-80}:${HTTP_PORT:-80}"
@@ -249,6 +208,28 @@ services:
           aliases:
           aliases:
             - nginx
             - nginx
 
 
+    acme-mailcow:
+      depends_on:
+        - nginx-mailcow
+      image: mailcow/acme
+      build: ./data/Dockerfiles/acme
+      # All domains to be included in the certificate
+      environment:
+        - CONTAINERS_RESTART=mailcowdockerized_postfix-mailcow_1 mailcowdockerized_dovecot-mailcow_1 mailcowdockerized_nginx-mailcow_1
+        # Additional subject alternate names
+        - ADDITIONAL_SAN=${ADDITIONAL_SAN}
+        - MAILCOW_HOSTNAME=${MAILCOW_HOSTNAME}
+      volumes:
+        - ./data/web/.well-known/acme-challenge:/var/www/acme:rw
+        - ./data/assets/ssl:/var/lib/acme/:rw
+        - /var/run/docker.sock:/var/run/docker.sock:ro
+      # do not restart the container too often. Things get worse when we hit let's encrypt's ratelimit.
+      restart: on-failure:3
+      networks:
+        mailcow-network:
+          aliases:
+            - acme
+
     fail2ban-mailcow:
     fail2ban-mailcow:
       image: mailcow/fail2ban
       image: mailcow/fail2ban
       build: ./data/Dockerfiles/fail2ban
       build: ./data/Dockerfiles/fail2ban