# vi: ft=yaml version: "3" networks: traefik: external: true configs: config: file: /srv/syncthing/config.xml private_key: file: /srv/syncthing/key.pem certificate: file: /srv/syncthing/cert.pem services: syncthing: image: lscr.io/linuxserver/syncthing:latest networks: - traefik deploy: placement: constraints: - "node.labels.syncthing == true" labels: - traefik.enable=true - traefik.http.routers.syncthing.entrypoints=localsecure - traefik.http.routers.syncthing.rule=Host(`syncthing.pim.kunis.nl`) - traefik.http.routers.syncthing.service=syncthing - traefik.http.routers.syncthing.tls=true - traefik.http.routers.syncthing.tls.certresolver=letsencrypt - traefik.docker.network=traefik - traefik.http.services.syncthing.loadbalancer.server.port=8384 environment: - PUID=1000 - PGID=1000 - TZ=Europe/Amsterdam volumes: - type: bind source: /mnt/data/syncthing target: /data configs: - source: config target: /config/config.xml - source: private_key target: /config/key.pem uid: '1000' gid: '1000' - source: certificate target: /config/cert.pem uid: '1000' gid: '1000'