Деплой на свой компьютер
Запустите dinary-server на своём Mac или PC и откройте доступ через интернет с помощью туннеля. Бесплатно, всегда работает пока компьютер включён, и совпадает с долгосрочной архитектурой (десктопный AI-агент будет работать на том же компьютере).
Стоимость
| Ресурс | Стоимость |
|---|---|
| Ваш компьютер | Уже есть |
| Tailscale Funnel | $0 (бесплатный Personal план) |
| Cloudflare Tunnel | $0 (бесплатный план) |
| Итого | $0/месяц |
Требования
- JSON-ключ сервисного аккаунта Google — см. Настройка Google Sheets.
- Заполненный
.envсDINARY_IMPORT_SOURCES_JSON, если вам нужен bootstrap import /import-config/ import-флоу.DINARY_SHEET_LOGGING_SPREADSHEETнастраивается отдельно и опционален. - dinary-server запущен локально (см. README).
Вариант A: Tailscale Funnel
Tailscale Funnel открывает локальный порт в публичный интернет через HTTPS. Простая настройка, но URL будет *.ts.net (без кастомного домена).
1. Установите Tailscale
- macOS:
brew install tailscaleили скачайте с tailscale.com/download - Windows: скачайте с tailscale.com/download
- Linux:
curl -fsSL https://tailscale.com/install.sh | sh
Войдите в аккаунт и подключитесь к tailnet.
2. Включите Funnel
- Включите MagicDNS (если ещё не включён).
- Включите HTTPS для вашего tailnet.
3. Запустите dinary-server
cd dinary-server
cp .env.example .env
# Отредактируйте .env при необходимости (`DINARY_IMPORT_SOURCES_JSON` для bootstrap import,
# опциональный `DINARY_SHEET_LOGGING_SPREADSHEET` для sheet logging, путь к credentials и т.д.)
uv run uvicorn dinary.main:app --host 127.0.0.1 --port 8000
4. Откройте через Funnel
В отдельном терминале:
tailscale funnel 8000
Tailscale покажет публичный URL, например https://your-machine.your-tailnet.ts.net. Этот URL доступен откуда угодно (телефон, другие устройства) по HTTPS.
Note
Funnel в бета-версии. Распространение DNS может занять несколько минут при первой настройке.
5. Работа в фоне
Чтобы dinary-server продолжал работать после закрытия терминала:
# Используйте менеджер процессов или nohup
nohup uv run uvicorn dinary.main:app --host 127.0.0.1 --port 8000 &
См. шаг 7 в инструкции по деплою на Oracle для примера systemd-сервиса.
Используйте Планировщик задач или запустите как Windows Service через NSSM.
Вариант B: Cloudflare Tunnel
Cloudflare Tunnel поддерживает кастомные домены и Cloudflare Access для авторизации. См. отдельную инструкцию Настройка Cloudflare Tunnel и Access.
Когда компьютер выключен
PWA сохраняет записи в IndexedDB когда сервер недоступен. Когда вы включите компьютер и туннель переподключится, PWA автоматически синхронизирует все накопленные записи при следующем открытии.
Сравнение
| Tailscale Funnel | Cloudflare Tunnel | |
|---|---|---|
| Настройка | Проще | Больше шагов |
| URL | *.ts.net (задан Tailscale) |
Ваш собственный домен |
| Авторизация | Нет встроенной | Cloudflare Access (email OTP) |
| Кастомный домен | Не поддерживается | Поддерживается |
| Статус | Бета | Стабильный |