diff --git a/syncthing-compose.yml b/syncthing-compose.yml new file mode 100644 index 0000000..e2ebf11 --- /dev/null +++ b/syncthing-compose.yml @@ -0,0 +1,47 @@ +cversion: "3.8" +services: + syncthing: + image: lscr.io/linuxserver/syncthing:latest + environment: + - PUID=1000 + - PGID=1000 + - TZ=America/New_York + volumes: + - syncthing_config:/config + # Data - The NFS Share + - /mnt/synology-data:/data/nas + ports: + # Sync Protocol (Listening for other devices) + - target: 22000 + published: 22000 + protocol: tcp + mode: host + - target: 22000 + published: 22000 + protocol: udp + mode: host + # Discovery (Optional, helpful for local LAN discovery) + - target: 21027 + published: 21027 + protocol: udp + mode: host + deploy: + mode: replicated + replicas: 1 + placement: + constraints: + - node.labels.type == nas + labels: + - "traefik.enable=true" + # Router: GUI + - "traefik.http.routers.syncthing.rule=Host(`sync.bendtstudio.com`)" + - "traefik.http.routers.syncthing.entrypoints=websecure" + - "traefik.http.routers.syncthing.tls.certresolver=letsencrypt" + - "traefik.http.services.syncthing.loadbalancer.server.port=8384" + - "traefik.docker.network=dokploy-network" +volumes: + syncthing_config: +networks: + default: + external: + name: dokploy-network