Files
obsidian-vault/family/how-to/obsidian-android-sync.md
T
2026-05-30 10:03:30 +00:00

143 lines
5.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
tags:
- obsidian
- android
- gitea
- sync
- how-to
created: '2026-05-14'
updated: '2026-05-14'
status: in-progress
---
# Obsidian Android Sync
Синхронизация полного Obsidian vault на Android через Gitea + Obsidian Git plugin.
## Архитектура
```
Android (Obsidian Git plugin)
│ HTTPS push/pull
Gitea (git.mallexxx.duckdns.org)
│ mirror / bare repo
TrueNAS bare repo
/mnt/RED_2TB/storage/git/obsidian-vault.git
├── Eagle (full vault, ~/obsidian)
├── Kraken (sparse: personal/ family/)
└── Taiga (sparse: personal/ family/)
```
## Инфраструктура
| Компонент | Расположение | Статус |
|-----------|-------------|--------|
| Gitea контейнер | `/mnt/RED_2TB/docker/gitea/` | ✅ запущен |
| Gitea данные | `/mnt/RED_2TB/docker/gitea/data/` | ✅ |
| Bare repos (read-only mount) | `/mnt/RED_2TB/storage/git/``/git-repos/` внутри контейнера | ✅ |
| Caddy домен | `git.mallexxx.duckdns.org → gitea:3000` | ✅ |
| Gitea версия | 1.26.1 | — |
| UID/GID контейнера | 950/950 (truenas_admin) | — |
## Токены Gitea (git_admin)
| Имя | Токен | Скопы | Дата | Статус |
|-----|-------|-------|------|--------|
| `eagle-reflect` | `f2e679a571f4c599d64b384a711043f995fd8844` | write:user, write:repository | 2026-05-16 | ✅ активен |
| _(без имени)_ | `983c1138253e93ff50fb2420873863e26c076c60` | write:repository | 2026-05-14 | ✅ активен |
| `eagle-setup`, `eagle-setup2`, `eagle-tmp`, `eagle-tmp2` | — | — | ~2026-05-14 | ❓ не сохранились, вероятно удалены |
Файл с токенами: `~/Documents/gitea_mallexxx.duckdns.org_tokens.txt`
## Репозитории
| Репо | URL | Владелец | Приватный |
|------|-----|----------|-----------|
| `obsidian-vault` | `https://git.mallexxx.duckdns.org/git_admin/obsidian-vault` | git_admin | ✅ |
| `reflect-app` | `https://git.mallexxx.duckdns.org/git_admin/reflect-app` | git_admin | ✅ |
## Первичная настройка Gitea (TODO)
Gitea при первом запуске показывает Installation page — нужно пройти через браузер:
1. Открыть https://git.mallexxx.duckdns.org
2. Настройки оставить как есть (SQLite, пути уже заданы через env)
3. Создать admin-аккаунт (например `alex` / strong password)
4. Install Gitea
### Импорт репозитория
После установки — импортировать существующий bare repo:
```bash
# SSH на TrueNAS, внутри контейнера
docker exec -it gitea gitea admin repo-import \
--name obsidian-vault \
--owner alex \
--path /git-repos/obsidian-vault.git
```
Или через Web UI: `+` → New repository → Import.
### Создать пользователя alex-phone
```bash
docker exec -it gitea gitea admin user create \
--username alex-phone \
--password 'STRONG_PASSWORD' \
--email alex-phone@local \
--must-change-password=false
```
Затем добавить как collaborator репозитория obsidian-vault с правами Write.
## Настройка Android
### Установка
1. Установить **Obsidian** из Play Market
2. Создать новый пустой локальный vault (или открыть существующий)
3. Settings → Community plugins → включить
4. Browse → найти **Obsidian Git** → Install → Enable
### Клонирование репозитория
1. Открыть Command Palette (иконка в левом верхнем углу или свайп вниз по боковой панели)
2. Ввести: `Obsidian Git: Clone an existing remote repo`
3. Ввести URL: `https://git.mallexxx.duckdns.org/alex/obsidian-vault.git`
4. Username: `alex-phone`
5. Password: (пароль из шага создания пользователя)
6. Vault directory: оставить пустым (клонирует в корень vault)
7. Дождаться завершения клонирования
### Настройки плагина (Settings → Obsidian Git)
| Настройка | Значение |
|-----------|---------|
| Auto pull interval | 30 (минут) |
| Auto push interval | 30 (минут) |
| Pull on startup | ✅ |
| Sync method | Merge |
| Author name | alex-phone |
| Author email | alex-phone@local |
## Обслуживание
```bash
# Проверить статус Gitea
docker logs gitea --tail=20
# Перезапустить
cd /mnt/RED_2TB/docker/gitea && docker compose restart
# Обновить образ
cd /mnt/RED_2TB/docker/gitea && docker compose pull && docker compose up -d
```
## Связанные заметки
- [[obsidian-sync]] — общая архитектура sync Eagle ↔ Taiga ↔ Kraken
- [[truenas-infrastructure]] — TrueNAS инфраструктура