32 lines
1.1 KiB
YAML
32 lines
1.1 KiB
YAML
services:
|
|
syncthing:
|
|
extends:
|
|
file: ${TEMPLATES_PATH}
|
|
service: default
|
|
image: syncthing/syncthing
|
|
container_name: syncthing
|
|
volumes:
|
|
- ${EXTERNAL_STORAGE}/notes/Obsidian-sync:/var/syncthing-data/Obsidian-sync
|
|
- ${EXTERNAL_STORAGE}/media/pictures/to-sort:/var/syncthing-data/picture-phone
|
|
- ${INFRA_PATH}/syncthing/data:/var/syncthing
|
|
ports:
|
|
- 8384:8384 # Web UI
|
|
- 22000:22000/tcp # TCP file transfers
|
|
- 22000:22000/udp # QUIC file transfers
|
|
- 21027:21027/udp # Receive local discovery broadcasts
|
|
networks:
|
|
- ip4net
|
|
- ip6net
|
|
labels:
|
|
# Watchtower
|
|
- "com.centurylinklabs.watchtower.enable=true"
|
|
# Traefik
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.syncthing.rule=Host(`syncthing.${LOCAL_DOMAIN}`)"
|
|
- "traefik.http.routers.syncthing.entrypoints=https"
|
|
- "traefik.http.routers.syncthing.tls=true"
|
|
- "traefik.http.routers.syncthing.service=syncthing-svc"
|
|
- "traefik.http.services.syncthing-svc.loadbalancer.server.port=8384"
|
|
# Middlewares
|
|
#- "traefik.http.routers.syncthing.middlewares=crowdsec-bouncer@file"
|