--- title: "Mailcow" date: 2025-05-27T14:51:36+02:00 tags: - 100DaysToOffload draft: false author: "Colmaris" categories: - notes toc: true --- ## Mailcow derrière Traefik Modifier le fichier de configuration `mailcow.conf`afin que nginx écoute sur les `8080` et `8443` ```shell HTTP_PORT=8080 HTTP_BIND=127.0.0.1 HTTPS_PORT=8443 HTTPS_BIND=127.0.0.1 ``` Dans l'arborescence de mailcow créer un fichier `docker-compose.override.yml` et placer les lignes suivantes. ```yaml services: nginx-mailcow: expose: - 8080 labels: - traefik.enable=true - traefik.http.routers.nginx-mailcow.rule=HostRegexp(`{host:(autodiscover|autoconfig|webmail|mail|email).+}`) - traefik.http.routers.nginx-mailcow.entrypoints=https - traefik.http.routers.nginx-mailcow.rule=Host(`${MAILCOW_HOSTNAME}`) - traefik.http.routers.nginx-mailcow.tls=true - traefik.http.routers.nginx-mailcow.tls.certresolver=le # Uncomment to use wildcard cert: # - traefik.http.routers.nginx-mailcow.tls.domains[0].main=example.com # - traefik.http.routers.nginx-mailcow.tls.domains[0].sans=*.example.com - traefik.http.routers.nginx-mailcow.service=nginx-mailcow - traefik.http.services.nginx-mailcow.loadbalancer.server.port=8080 - traefik.docker.network=traefik networks: - traefik certdumper: image: humenius/traefik-certs-dumper network_mode: none command: --restart-containers mailcow_postfix-mailcow_1,mailcow_dovecot-mailcow_1,mailcow_nginx-mailcow_1 volumes: - /home/draconis/traefik/certificates:/traefik:ro - /var/run/docker.sock:/var/run/docker.sock:ro - ./data/assets/ssl:/output:rw environment: - DOMAIN=${MAILCOW_HOSTNAME} # If using wildcard certs instead of an explicit host cert, # use following line instead with just the TLD so certdumper # is able to find the cert. # - DOMAIN=YourDomain.com networks: traefik: external: true ```