chore: общий Postgres по умолчанию; compose standalone + подсказки .env
Made-with: Cursor
This commit is contained in:
@@ -116,9 +116,11 @@
|
||||
2. Один раз создать базу:
|
||||
`psql "postgresql://hr_bot_user:hrbot123@localhost:5432/postgres" -c "CREATE DATABASE clinic_tests;"`
|
||||
3. Скопировать `backend/.env.example` в `backend/.env`, при необходимости поправить `DATABASE_URL` (внутри Docker кластера — хост `hr_postgres_dev`, порт `5432`).
|
||||
4. Миграции: из каталога `backend/`: `npm run migrate`, затем `npm run start` (и фронт из `frontend/` — `npm run dev`).
|
||||
4. Миграции: из каталога `backend/`: `npm run migrate`, затем `npm start` (и фронт из `frontend/` — `npm run dev`).
|
||||
|
||||
Старый вариант **только** с локальным Postgres на порту 5433: корневой `docker compose up -d` в TestingWebApp и в `.env` порт `5433` (или отдельные `DB_*` без `DATABASE_URL`) — оставлен для разработки без общего `Postgres_TG_Bots`.
|
||||
**Без общего кластера** (только отладка): `docker compose --profile standalone up -d` в TestingWebApp — Postgres на **5433**, тогда в `.env` укажите `DATABASE_URL=...localhost:5433/clinic_tests` или `DB_PORT=5433` с `DB_NAME`/`DB_USER` из compose.
|
||||
|
||||
**Если `npm run migrate` пишет `ECONNREFUSED ...:5433`:** в `backend/.env` нет (или кривой) `DATABASE_URL` на **5432**, и сработал старый `DB_PORT=5433`. Задайте `DATABASE_URL` как в `backend/.env.example` для общего Postgres.
|
||||
|
||||
### Данные, сотрудники, интеграция с HR
|
||||
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
# Как в HR_TG_Bot: тот же Postgres из Postgres_TG_Bots (docker-compose.dev.yml),
|
||||
# отдельная база clinic_tests — таблицы приложения не смешиваются с hr_bot_test
|
||||
# (связь с штатом по staff_members.id; чтение hr_bot_test — отдельный DSN в коде, см. card1 A.x).
|
||||
# telegram_id в бизнес-логике модуля не используем (только справка в HR).
|
||||
# --- Рекомендуемый вариант: ОБЩИЙ кластер (Postgres_TG_Bots) ---
|
||||
# Скопируйте в backend/.env и задайте минимум DATABASE_URL + JWT_SECRET.
|
||||
# Не оставляйте в .env устаревший DB_PORT=5433, если пользуетесь 5432 — иначе,
|
||||
# при отсутствии/ошибке в DATABASE_URL пул уйдёт на DB_* и снова «не туда».
|
||||
#
|
||||
# Локально (порт 5432 на хосте, как в Postgres_TG_Bots):
|
||||
# DATABASE_URL=postgresql://hr_bot_user:hrbot123@localhost:5432/clinic_tests
|
||||
# Как в HR_TG_Bot: тот же Postgres (Postgres_TG_Bots/docker-compose.dev.yml),
|
||||
# отдельная база clinic_tests (не путать с hr_bot_test).
|
||||
# Локально (порт 5432, как в Postgres_TG_Bots на хосте):
|
||||
#
|
||||
# Backend в Docker рядом с HR: хост — container_name Postgres, порт 5432 внутри сети:
|
||||
# DATABASE_URL=postgresql://hr_bot_user:hrbot123@hr_postgres_dev:5432/clinic_tests
|
||||
@@ -12,7 +13,7 @@
|
||||
# Базу clinic_tests создают один раз (от суперпользователя контейнера):
|
||||
# psql "postgresql://hr_bot_user:hrbot123@localhost:5432/postgres" -c "CREATE DATABASE clinic_tests;"
|
||||
#
|
||||
# Если DATABASE_URL не задан, используются переменные ниже (устаревший сценарий со своим Postgres на 5433).
|
||||
# Если DATABASE_URL НЕ задан, берутся DB_* (fallback). Для общего кластера задавайте DATABASE_URL.
|
||||
# DB_HOST=localhost
|
||||
# DB_PORT=5432
|
||||
# DB_NAME=clinic_tests
|
||||
|
||||
+7
-4
@@ -1,10 +1,13 @@
|
||||
# Опционально: изолированный Postgres на 5433, если не используете общий кластер из
|
||||
# ../Postgres_TG_Bots/docker-compose.dev.yml (сеть hr_postgres_dev_net, порт 5432).
|
||||
# Основной сценарий: поднять Postgres там, создать БД clinic_tests, в backend/.env задать DATABASE_URL
|
||||
# (см. backend/.env.example) — аналогично HR_TG_Bot (DATABASE_URL к hr_postgres_dev или localhost:5432).
|
||||
# По умолчанию этот compose ничего не поднимает — используется ОБЩИЙ Postgres из
|
||||
# ../Postgres_TG_Bots/docker-compose.dev.yml (порт 5432 на хосте, сеть hr_postgres_dev_net).
|
||||
# В backend/.env: DATABASE_URL=...localhost:5432/clinic_tests (см. backend/.env.example).
|
||||
#
|
||||
# Только если общий кластер не нужен, изолированный Postgres (порт 5433):
|
||||
# docker compose --profile standalone up -d
|
||||
|
||||
services:
|
||||
postgres:
|
||||
profiles: ["standalone"]
|
||||
image: postgres:15
|
||||
environment:
|
||||
POSTGRES_DB: clinic_tests
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
### 1.3. Настройка окружения
|
||||
|
||||
- PostgreSQL: общий кластер с [Postgres_TG_Bots](../../../Postgres_TG_Bots) / [HR_TG_Bot](../../../HR_TG_Bot) (`DATABASE_URL` в `backend/.env`, отдельная БД `clinic_tests` — см. [README — Установка и запуск](../../README.md#установка-и-запуск)). Сотрудник в будущей интеграции — по **`staff_members.id`** в `hr_bot_test`; **`telegram_id`** в процессах модуля не используем. Опционально: локальный Postgres только для TestingWebApp — корневой `docker-compose.yml` (порт 5433).
|
||||
- PostgreSQL: **по умолчанию** общий кластер [Postgres_TG_Bots](../../../Postgres_TG_Bots) / [HR_TG_Bot](../../../HR_TG_Bot) — `DATABASE_URL` в `backend/.env` → `localhost:5432` / БД `clinic_tests` (см. [README](../../README.md#установка-и-запуск)). Локальный отдельный инстанс только по необходимости: `docker compose --profile standalone up` (порт 5433). Сотрудник в интеграции — `staff_members.id`; `telegram_id` в логике модуля не используем.
|
||||
- Переменные окружения (`.env` по образцу `backend/.env.example`)
|
||||
- Настройка линтеров и форматтеров
|
||||
|
||||
|
||||
Reference in New Issue
Block a user