services: diun: image: crazymax/diun networks: - docker - gotify volumes: - diun:/data configs: - source: diun target: /etc/diun/ secrets: - source: diun_gotify_token target: gotify_token restart: unless-stopped smokeping: image: linuxserver/smokeping networks: - traefik volumes: - smokeping:/data #configs: # - source: smokeping # target: /config/ restart: unless-stopped labels: traefik.enable: true traefik.http.routers.smokeping.rule: HostRegexp(`smokeping{subdomain:(\.[a-z0-9-]+)?}.dedicated.contact`) ddclient: image: linuxserver/ddclient entrypoint: /data/entrypoint.sh environment: GOTIFY_ADDRESS: http://gotify GOTIFY_TOKEN_FILE: /run/secrets/gotify_token CLOUDFLARE_DOMAIN: ${DDCLIENT_CLOUDFLARE_DOMAIN-test.dedicated.contact} CLOUDFLARE_TOKEN_FILE: /run/secrets/cloudflare_token networks: - gotify volumes: - ddclient:/data configs: - source: ddclient target: /config/ddclient.conf.tpl secrets: - source: ddclient_gotify_token target: gotify_token - source: ddclient_cloudflare_token target: cloudflare_token restart: unless-stopped networks: docker: external: true gotify: external: true traefik: external: true volumes: diun: driver_opts: type: none o: bind device: ${MOUNT_DIR?}/diun/data/ smokeping: driver_opts: type: none o: bind device: ${MOUNT_DIR?}/smokeping/data/ ddclient: driver_opts: type: none o: bind device: ${MOUNT_DIR?}/ddclient/data/ configs: diun: file: ${MOUNT_DIR?}/diun/config/ # smokeping: # file: ${MOUNT_DIR?}/smokeping/config/ ddclient: file: ${MOUNT_DIR?}/ddclient/config/ddclient.conf.tpl secrets: diun_gotify_token: file: ${MOUNT_DIR?}/diun/secrets/gotify_token ddclient_gotify_token: file: ${MOUNT_DIR?}/ddclient/secrets/gotify_token ddclient_cloudflare_token: file: ${MOUNT_DIR?}/ddclient/secrets/cloudflare_token