version: '3.4' services: app: image: "{{ stack_image }}:{{ shepherd_version }}" # healthcheck: # test: ["CMD", "wget", "--spider", "-q", "127.0.0.1"] # interval: 1m # timeout: 10s # retries: 3 # start_period: 1m command: serve volumes: - "/var/run/docker.sock:/var/run/docker.sock" environment: - "TZ={{ shepherd_tz }}" - "SLEEP_TIME={{ shepherd_sleeptime }}" - "IGNORELIST_SERVICES={{ shepherd_ignored_services }}" {% if shepherd_filter_services is defined and not None %} - "FILTER_SERVICES={{ shepherd_filter_services }}" {% endif %} - "ROLLBACK_ON_FAILURE={{ shepherd_rollback_on_failure }}" - "IMAGE_AUTOCLEAN_LIMIT={{ shepherd_image_autoclean_limit }}" - "VERBOSE=true" {% if shepherd_notification_targets is defined and not None %} - "APPRISE_SIDECAR_URL: notify:5000" {% endif %} networks: - backend deploy: mode: replicated replicas: 1 placement: constraints: - node.role == manager {% if shepherd_notification_targets is defined and not None %} notify: image: mazzolino/apprise-microservice:latest environment: NOTIFICATION_URLS: {{ shepherd_notification_targets }} networks: - backend {% endif %} volumes: data: networks: "{{ docker_swarm_public_network_name }}": external: true backend: