Первый коммит: модульный монолит ядра (.NET 10) и gRPC-сервисы ai/ml/telegram, фронтенд Vue 3/Vite/Tailwind, документация (ТЗ, инструкция пользователя, техдокументация, код-стайл), бэклог, скрипты развёртывания и архив прототипа LeadRadar.
54 lines
2.0 KiB
Markdown
54 lines
2.0 KiB
Markdown
# Task 5 Report: Dev-Postgres в docker compose (схема на тенанта)
|
|
|
|
Date: 2026-09-05
|
|
|
|
## Files created
|
|
|
|
- `deploy/compose.dev.yml` — verbatim from the plan (Step 1): service `postgres`, image `postgres:16-alpine`, `container_name: deal-postgres`, host port `5433:5432`, volume `deal_pgdata`, healthcheck `pg_isready -U deal -d deal` (interval 5s, timeout 3s, retries 10).
|
|
- `deploy/.env.example` — verbatim from the plan (Step 2): `DEAL_PG_HOST/PORT/DB/USER/PASSWORD` (`localhost:5433`, `deal`/`deal`/`deal_dev_password`).
|
|
|
|
`deploy/` directory did not exist and was created.
|
|
|
|
## Container status
|
|
|
|
- Command: `docker compose -f deploy/compose.dev.yml up -d`
|
|
- Result: `deal-postgres` created and started; image was already present locally (no long pull).
|
|
- Final status: `Up (healthy)` on `0.0.0.0:5433->5432/tcp`.
|
|
- Existing LeadRadar containers (`leadradar`, `leadradar-ml`, `leadradar-minio`) were NOT touched and remain running.
|
|
|
|
## psql verification (Step 4)
|
|
|
|
Command:
|
|
|
|
```
|
|
docker exec deal-postgres psql -U deal -d deal -c "SELECT current_database(), current_schema();"
|
|
```
|
|
|
|
Output:
|
|
|
|
```
|
|
current_database | current_schema
|
|
------------------+----------------
|
|
deal | public
|
|
(1 row)
|
|
```
|
|
|
|
Expected `deal | public` — PASS. DB `deal`, default schema `public` ready for migrations.
|
|
|
|
## README change (Step 5)
|
|
|
|
Appended to root `README.md` (existing content intact):
|
|
|
|
```markdown
|
|
## Запуск dev-окружения
|
|
|
|
Postgres (схема на тенанта): `docker compose -f deploy/compose.dev.yml up -d`
|
|
```
|
|
|
|
## Concerns
|
|
|
|
- None blocking. Minor notes:
|
|
- Password `deal_dev_password` is hardcoded dev-only value, fine for local dev per plan.
|
|
- Compose project name defaults to `deploy` (network `deploy_default`, volume `deploy_deal_pgdata`), since no `name:` was set in the plan file. Expected per plan; consistent on any host using `-f deploy/compose.dev.yml`.
|
|
- `postgres:16-alpine` was already cached locally, so startup was fast; first pull on a fresh host will take longer.
|