diff --git a/docs/reverse.rst b/docs/reverse.rst index f2826890..a55f865e 100644 --- a/docs/reverse.rst +++ b/docs/reverse.rst @@ -176,20 +176,21 @@ One such example is ``mailu/traefik-certdumper``, which has been adapted for use # !!! Also don’t forget to add "TRAEFIK_DOMAIN=[...]" to your .env! - DOMAIN=$TRAEFIK_DOMAIN volumes: + # Folder, which contains the acme.json - "/data/traefik:/traefik" - - "$ROOT/certs:/output" + # Folder, where cert.pem and key.pem will be written + - "/data/mailu/certs:/output" - -Assuming you have ``volume-mounted`` your ``acme.json`` put to ``/data/traefik`` on your host. The dumper will then write out ``/data/traefik/ssl/your.doma.in.crt`` -and ``/data/traefik/ssl/your.doma.in.key`` whenever ``acme.json`` is updated. Yay! Now let’s mount this to our ``front`` container like: +Assuming you have ``volume-mounted`` your ``acme.json`` put to ``/data/traefik`` on your host. The dumper will then write out ``/data/mailu/certs/cert.pem`` and ``/data/mailu/certs/key.pem`` whenever ``acme.json`` is updated. +Yay! Now let’s mount this to our ``front`` container like: .. code-block:: yaml volumes: - - "$ROOT/overrides/nginx:/overrides" - - /data/traefik/ssl/$TRAEFIK_DOMAIN.crt:/certs/cert.pem - - /data/traefik/ssl/$TRAEFIK_DOMAIN.key:/certs/key.pem + - /data/mailu/certs:/certs + +This works, because we set ``TLS_FLAVOR=mail``, which picks up the key-certificate pair (e.g., ``cert.pem`` and ``key.pem``) from the certs folder in the root path (``/certs/``). .. _`Traefik`: https://traefik.io/ diff --git a/optional/traefik-certdumper/run.sh b/optional/traefik-certdumper/run.sh index eeb45ac0..2880d44f 100755 --- a/optional/traefik-certdumper/run.sh +++ b/optional/traefik-certdumper/run.sh @@ -5,8 +5,10 @@ function dump() { traefik-certs-dumper file --crt-name "cert" --crt-ext ".pem" --key-name "key" --key-ext ".pem" --domain-subdir --dest /tmp/work --source /traefik/acme.json > /dev/null - if diff -q /tmp/work/${DOMAIN}/cert.pem /output/cert.pem >/dev/null && \ - diff -q /tmp/work/${DOMAIN}/key.pem /output/key.pem >/dev/null ; then + if [[ -f /tmp/work/${DOMAIN}/cert.pem && -f /tmp/work/${DOMAIN}/key.pem && -f /output/cert.pem && -f /output/key.pem ]] && \ + diff -q /tmp/work/${DOMAIN}/cert.pem /output/cert.pem >/dev/null && \ + diff -q /tmp/work/${DOMAIN}/key.pem /output/key.pem >/dev/null ; \ + then echo "$(date) Certificate and key still up to date, doing nothing" else echo "$(date) Certificate or key differ, updating"