- Architecture: overview, 7 ADR, tech stack - Principles: code-style, git-workflow, security - API contracts: auth, profile, tests, admin endpoints - Database schema: tables, relationships, indexes - LLM strategy: prompts, fallback, validation, Qwen 2.5 14B - Onboarding: setup, Docker, .env template - Progress: roadmap, changelog - Agents: context, backend instructions Made-with: Cursor
45 lines
1.8 KiB
Markdown
45 lines
1.8 KiB
Markdown
# ADR-006: VPS + Docker Compose для деплоя
|
||
|
||
## Статус
|
||
|
||
Принято
|
||
|
||
## Контекст
|
||
|
||
Нужна стратегия деплоя для MVP. Критерии: простота, предсказуемая стоимость, контроль над сервером.
|
||
|
||
## Варианты
|
||
|
||
1. **VPS + Docker Compose** — один сервер, все сервисы в контейнерах, предсказуемая цена.
|
||
2. **Cloud managed (AWS ECS, Yandex Cloud)** — масштабирование, managed DB, но сложнее и дороже для MVP.
|
||
3. **PaaS (Railway, Render)** — самый простой деплой, но ограничения и непредсказуемые costs при росте.
|
||
|
||
## Решение
|
||
|
||
VPS + Docker Compose для MVP.
|
||
|
||
### Состав контейнеров
|
||
|
||
```
|
||
docker-compose.yml
|
||
├── backend (Fastify API)
|
||
├── frontend (nginx + React static build)
|
||
├── postgres (PostgreSQL)
|
||
├── redis (Redis)
|
||
└── nginx (reverse proxy, SSL termination)
|
||
```
|
||
|
||
### Почему VPS
|
||
|
||
- Полный контроль над сервером (LLM-логи, бэкапы, мониторинг)
|
||
- Фиксированная стоимость ~500-1500 руб/мес
|
||
- Docker Compose — один файл для всего окружения
|
||
- При росте — миграция на cloud без изменения контейнеров
|
||
|
||
## Последствия
|
||
|
||
- Нужно самостоятельно настраивать SSL (Let's Encrypt / certbot)
|
||
- Нет автоматического масштабирования (достаточно для MVP)
|
||
- Бэкапы БД — скрипт с cron
|
||
- Мониторинг — Sentry + базовые health checks
|