2026-05-14 obsidian-android-sync: Gitea setup on TrueNAS
This commit is contained in:
@@ -0,0 +1,125 @@
|
||||
---
|
||||
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 (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 инфраструктура
|
||||
Reference in New Issue
Block a user