standard-notes/README.md

56 lines
No EOL
4.6 KiB
Markdown
Raw Permalink 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.

# Standard Notes — self-hosted сервер
Готовый набор файлов для запуска своего сервера синхронизации Standard Notes (официальная V2-схема, 4 контейнера).
## Что внутри
- `docker-compose.yml` — конфигурация сервисов (server, localstack, mysql, redis)
- `.env` — уже сгенерированы случайные секреты (DB_PASSWORD, AUTH_JWT_SECRET, AUTH_SERVER_ENCRYPTION_SERVER_KEY, VALET_TOKEN_SECRET)
- `localstack_bootstrap.sh` — служебный скрипт для внутренней очереди сообщений
## Запуск
1. Скопируйте все три файла на сервер в одну папку, например `~/standardnotes/`
2. Убедитесь, что установлены Docker и Docker Compose:
```
docker --version
docker compose version
```
3. В папке с файлами запустите:
```
docker compose pull
docker compose up -d
```
4. Проверьте логи, что всё стартовало без ошибок:
```
docker compose logs -f
```
5. Сервер будет доступен на порту **3000** (API/sync) и **3125** (файлы/вложения).
## Подключение с Android
1. Установите приложение **Standard Notes** (Play Store или F-Droid)
2. На экране входа/регистрации откройте **Advanced Options**
3. В поле **Sync Server URL** укажите адрес вашего сервера, например:
```
http://ВАШ_IP:3000
```
или, если настроен домен и HTTPS через reverse proxy:
```
https://notes.вашдомен.ru
```
4. Зарегистрируйте новый аккаунт — он будет создан прямо на вашем сервере, без привязки к Joplin Cloud/Standard Notes Cloud
5. На компьютере (десктоп-приложение или app.standardnotes.com) повторите те же шаги с тем же email — заметки будут синхронизироваться между устройствами через ваш сервер
## Важно про доступ извне
Если телефон будет подключаться не из домашней сети, а из мобильного интернета — нужен один из вариантов:
- **Reverse proxy + домен + HTTPS** (рекомендуется) — например через Nginx Proxy Manager или Caddy, с сертификатом Let's Encrypt
- **VPN до дома** (Tailscale/WireGuard) — проще в настройке, не требует открытых портов и домена
Без HTTPS synchronization по чистому HTTP через интернет работать будет, но небезопасно (логин/пароль и данные идут в открытом виде) — подходит только для теста внутри локальной сети.
## Резервное копирование
Все данные лежат в папках `./data/mysql`, `./data/redis` и `./uploads` рядом с docker-compose.yml — их достаточно регулярно бэкапить (например, простым cron + tar/rsync на другой диск).