4.0 KiB
Executable File
4.0 KiB
Executable File
tags, created, updated, status
| tags | created | updated | status | ||||||
|---|---|---|---|---|---|---|---|---|---|
|
2026-05-29 | 2026-05-29 | active |
Syncthing — TrueNAS ↔ Android
Статус: ✅ контейнер на TrueNAS работает, Caddy настроен
Архитектура
Android (Syncthing app)
│ P2P sync (QUIC/TCP :22000)
▼
TrueNAS (syncthing контейнер)
/var/syncthing/obsidian-vault → /mnt/RED_2TB/storage/obsidian
│
├── Obsidian vault (полная копия на TrueNAS)
└── Eagle (Mac) — продолжает через git, Syncthing не участвует
Доступ
- Web UI: https://syncthing.mallexxx.duckdns.org
- Авторизация: встроенная GUI Authentication Syncthing (не Caddy basic_auth)
- Локально на TrueNAS:
http://localhost:8384
Контейнер
Compose: /mnt/RED_2TB/docker/syncthing/docker-compose.yml
services:
syncthing:
image: syncthing/syncthing:latest
container_name: syncthing
hostname: syncthing-taiga
restart: unless-stopped
user: "950:950"
environment:
- PUID=950
- PGID=950
- TZ=Asia/Novosibirsk
volumes:
- /mnt/RED_2TB/docker/syncthing/config:/var/syncthing/config
- /mnt/RED_2TB/storage/obsidian:/var/syncthing/obsidian-vault
ports:
- "22000:22000/tcp"
- "22000:22000/udp"
- "21027:21027/udp"
networks:
- caddy_default
networks:
caddy_default:
external: true
UID 950 = truenas_admin — имеет FULL_CONTROL ACL на /mnt/RED_2TB/storage/obsidian.
Caddy
В /mnt/RED_2TB/docker/caddy/Caddyfile:
syncthing.mallexxx.duckdns.org {
reverse_proxy syncthing:8384
}
Без basic_auth — защита через встроенную GUI Authentication Syncthing.
Настройка после развёрта
- Открыть https://syncthing.mallexxx.duckdns.org
- Settings → GUI → установить GUI Authentication User и GUI Authentication Password
- Добавить папку: Add Folder
- Folder Label:
obsidian-vault - Folder ID:
obsidian-vault - Folder Path:
/var/syncthing/obsidian-vault - File Versioning: по желанию (Trash can / Simple)
- Folder Label:
- На телефоне Android: установить Syncthing (из F-Droid или Play Market)
- Добавить устройство (сканировать QR код сервера или ввести Device ID)
- Добавить ту же папку
obsidian-vault, указать локальный путь (например~/Documents/Obsidian) - Настроить File Versioning (рекомендуется
Trash can, 30 дней) - Включить синк
Поведение
- Фон: Syncthing работает через
Foreground Service— на Samsung One UI стабильно - Конфликты: Автоматически — создаёт
.filename.sync-conflict-<date>-<device>.md(скрытые файлы с точкой) - Настройка конфликтов: В настройках папки можно убрать точку —
Store conflict files with version extension (not Hidden) - Автоудаление конфликтов:
File Versioning→Trash can→ очищать через N дней
Обслуживание
# Логи
docker logs syncthing --tail 20
# Рестарт
docker compose -f /mnt/RED_2TB/docker/syncthing/docker-compose.yml restart
# Остановка
docker compose -f /mnt/RED_2TB/docker/syncthing/docker-compose.yml down
Связанные заметки
- obsidian-android-sync — git-based синк (альтернатива через Gitea)
- obsidian-sync — общая архитектура sync Eagle ↔ Taiga ↔ Kraken
- truenas-infrastructure — TrueNAS инфраструктура