From 50df102ec8f1e9949fe58e7a9caf6fb1a0dd74c9 Mon Sep 17 00:00:00 2001 From: Fernandez Ludovic Date: Mon, 22 Nov 2021 22:56:56 +0100 Subject: [PATCH] review --- readme.md | 60 +++++++++++++++++++++++++++++++------------------------ 1 file changed, 34 insertions(+), 26 deletions(-) diff --git a/readme.md b/readme.md index fc0784a..27b9aee 100644 --- a/readme.md +++ b/readme.md @@ -131,6 +131,40 @@ dump └──letsencrypt.key ``` +## Hook + +Hook can be a one liner passed as a string, or a file for more complex post-hook scenarios. +For the former, create a file (ex: `hook.sh`) and mount it, then pass `sh hooksh` as a parameter to `--post-hook`. + +Here is a docker-compose example: + +```yml +version: '3.7' + +services: +# ... + + traefik-certs-dumper: + image: ldez/traefik-certs-dumper:v2.7.4 + container_name: traefik-certs-dumper + entrypoint: sh -c ' + apk add jq + ; while ! [ -e /data/acme.json ] + || ! [ `jq ".[] | .Certificates | length" /data/acme.json` != 0 ]; do + sleep 1 + ; done + && traefik-certs-dumper file --version v2 --watch + --source /data/acme.json --dest /data/certs + --post-hook "sh /hook.sh"' + labels: + traefik.enable: false + volumes: + - ./letsencrypt:/data + - ./hook.sh:/hook.sh + +# ... +``` + ### KV store #### Consul @@ -156,29 +190,3 @@ $ traefik-certs-dumper kv boltdb --endpoints /the/path/to/mydb.db ```console $ traefik-certs-dumper kv zookeeper --endpoints localhost:2181 ``` - -## Hook example - -Hook can be a one liner passed as a string, or a file for more complex post-hook scenarios. For the former, create a file hook.sh and mount it, then pass "sh hooksh" as a parameter to --post-hook. - -Here is a docker-compose example: - -```console - traefik-certs-dumper: - image: ldez/traefik-certs-dumper:v2.7.0 - container_name: traefik-certs-dumper - entrypoint: sh -c ' - apk add jq - ; while ! [ -e /data/acme.json ] - || ! [ `jq ".[] | .Certificates | length" /data/acme.json` != 0 ]; do - sleep 1 - ; done - && ls /data/certs/chat.talbot.audio - && traefik-certs-dumper file --version v2 --domain-subdir --crt-ext=.pem --key-ext=.pem --watch --source /data/acme.json --dest /data/certs/ --post-hook "sh /traefik-certs-dumper/hook.sh"' - labels: - - "traefik.enable=false" - volumes: - - "./letsencrypt-data:/data" - - "./traefik-certs-dumper-data:/traefik-certs-dumper" - - "./out-data:/out-data" -```