Files
gpu-rent/README.md
T
Leonid Pershin ec42830579 Update README and CLI documentation for tunnel functionality
- Enhanced README.md to clarify the `gpu-rent up` command, including default tunnel behavior and options for cloud-only operation.
- Updated cli.md to reflect changes in the `gpu-rent up` command, detailing the new `--no-tunnel` option and its implications.
- Revised decisions.md to explain the separation of `up` and `tunnel` commands, emphasizing the default tunnel opening after `up`.
- Improved doctor.py to provide clearer instructions regarding tunnel creation and cloud-only usage.
- Adjusted notify.py to reflect the updated command usage for accessing the SwarmUI.
2026-08-21 04:43:33 +03:00

87 lines
3.8 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.
# gpu-rent
Прерываемый GPU в [Selectel](https://selectel.ru) + SwarmUI на `http://127.0.0.1:17801`.
Модели и ComfyUI живут на сетевом диске — платишь за GPU только пока он поднят.
**Сначала ключи и квота GPU, не `up`.** → [`docs/setup.md`](docs/setup.md)
---
## Быстрый старт
```powershell
.\gpu-rent.ps1 doctor # preflight
.\gpu-rent.ps1 flavors # что выберет фоллбек
.\gpu-rent.ps1 dry-run # план без create
.\gpu-rent.ps1 up --yes # GPU + SwarmUI + seed + туннель :17801
.\gpu-rent.ps1 up --yes --no-tunnel # только облако
.\gpu-rent.ps1 tunnel --open # снова открыть UI, если туннель закрыли
.\gpu-rent.ps1 hold # отложить idle-killer
.\gpu-rent.ps1 stop # гасить compute, диски оставить
```
Unix: `./gpu-rent.sh …` (один раз `chmod +x gpu-rent.sh`).
Лаунчер сам создаёт `.venv` и ставит пакет. Конфиг — **в корне репо**:
| Файл | Что |
| --- | --- |
| `.env` | из `env.example``OS_*`, Civitai |
| `models.yaml` | из `models.example.yaml` — seed с Civitai |
| `extensions.yaml` | из `extensions.example.yaml` |
| `.gpu-rent/` | state, SSH-ключ (gitignore) |
---
## Команды
| Команда | Смысл |
| --- | --- |
| `doctor` | Keystone, квота GPU, flavor, Civitai, манифесты |
| `flavors` | Живой список по `FLAVOR_PREFERENCE` |
| `up` / `up --yes` | Поднять GPU + туннель :17801 (браузер). Ctrl+C = туннель off |
| `up --no-tunnel` | Только облако |
| `up --no-spot` / `up --flavor ID` | Обычный тариф / явный flavor |
| `tunnel` / `tunnel --open` | Повторный проброс; watchdog на EXPIRED |
| `open` | Браузер на 17801 |
| `hold` / `hold --minutes 90` / `hold --clear` | Пауза idle-killer |
| `status` | Nova + диск + killer |
| `seed-models` / `seed-extensions` | Докачать на живой диск |
| `push` / `push-models` / `pull-output` | Локальные папки ↔ VM |
| `resize-data --gb 400` | Диск только вверх |
| `stop` / `destroy --i-understand-data-loss` | Стоп GPU / + диски |
---
## Деньги и риски
- **GPU** — пока жив compute (`up``stop` или idle-killer).
- **Диск data** — **24/7**, даже после `stop`.
- Цены в OpenStack API **нет** — смотри панель Selectel.
- Preemptible по умолчанию (~24 ч) → `EXPIRED`; `tunnel` сам unshelve, иначе `up`.
- Idle-killer: льгота после boot, потом N мин пустой очереди → delete. `hold` откладывает.
- `Ctrl+C` на tunnel **не** гасит GPU.
---
## Модели
1. Civitai-seed по `models.yaml` (нужен `CIVITAI_API_TOKEN`, хост `civitai.red`).
2. Локальные `Models/`, `Wildcards/`, `CustomWorkflows/` — непустые едут на каждый `up`.
Пример в репо уже с Krea 2 + LoRA — скопируй в `models.yaml`.
---
## Документация
| Док | Зачем |
| --- | --- |
| [docs/setup.md](docs/setup.md) | Ключи, квота, RC |
| [docs/spike-notes.md](docs/spike-notes.md) | Чеклист живого spike |
| [docs/cli.md](docs/cli.md) | Все команды и `.env` |
| [docs/decisions.md](docs/decisions.md) | Продуктовые решения |
| [docs/roadmap.md](docs/roadmap.md) | Что готово / что нет |
MIT. Секреты и веса в git не коммитить.