docs(newwhats): banco dev isolado (newwhats_dev no pgdev) — reverte compartilhamento com VPS3
O dev passou a usar newwhats_dev no pgdev (VPS4), clone dos dados reais via pg_dump/restore, na rede soc. Reverte o uso do banco real newwhats@VPS3 (compartilhado), que arriscava corromper dados (cascade em chats/messages). Atualiza secao de conexoes e remove a nota de "nao rodar db push". Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -5,16 +5,17 @@
|
|||||||
|
|
||||||
## O que torna este projeto diferente do universal
|
## O que torna este projeto diferente do universal
|
||||||
|
|
||||||
O `infra/ambiente-dev.md` universal assume: dev servido por **imagem vite buildada** (nginx sobre `vite build`)
|
O `infra/ambiente-dev.md` universal assume: dev servido por **imagem vite buildada** (nginx sobre `vite build`).
|
||||||
e **banco DEV isolado no `pgdev` (VPS4)**, banco `<projeto>_dev`. O newwhats **diverge em dois pontos**:
|
O newwhats **diverge** num ponto (o banco segue o universal — `pgdev` isolado):
|
||||||
|
|
||||||
1. **Não é vite, é Next.js, e o front é container próprio.** O backend Express (`dist/server.js`) serve
|
1. **Não é vite, é Next.js, e o front é container próprio.** O backend Express (`dist/server.js`) serve
|
||||||
**só** `/api`, `/socket.io` e `/media` — **não** serve o frontend. O front é um container Next
|
**só** `/api`, `/socket.io` e `/media` — **não** serve o frontend. O front é um container Next
|
||||||
(`next start -p 3003`) separado. Por isso o dev tem **3 containers** (não um): backend + frontend + nginx
|
(`next start -p 3003`) separado. Por isso o dev tem **3 containers** (não um): backend + frontend + nginx
|
||||||
de roteamento.
|
de roteamento.
|
||||||
2. **Banco DEV não é o `pgdev` local — é o banco `newwhats` na VPS3** (decisão do administrador: dev com
|
|
||||||
**dados reais**, compartilhado). ⚠️ Isso **abre mão do isolamento** que o universal garante: o dev
|
> **Histórico:** por um período o dev apontou para o banco real `newwhats` na VPS3 (compartilhado). Isso foi
|
||||||
**grava nos dados reais** (~89k messages, ~10k contacts). Cache isolado via **Dragonfly DB index `/1`**.
|
> revertido em 27/jun/2026 — testes podiam corromper dados reais (delete de instância faz cascade em
|
||||||
|
> chats/messages). Agora o banco é **isolado** (`newwhats_dev` no `pgdev`), como manda o universal.
|
||||||
|
|
||||||
## Onde roda / estrutura
|
## Onde roda / estrutura
|
||||||
|
|
||||||
@@ -47,14 +48,15 @@ DOCKER_HOST=unix:///run/user/1000/docker.sock docker compose -f docker-compose.d
|
|||||||
|
|
||||||
- **`NEXT_PUBLIC_API_URL` = raiz** (`https://dev.newwhats.clube67.com`), **sem `/api`** — o código já prefixa `/api`
|
- **`NEXT_PUBLIC_API_URL` = raiz** (`https://dev.newwhats.clube67.com`), **sem `/api`** — o código já prefixa `/api`
|
||||||
nas chamadas REST; o Socket.IO usa `new URL(url).origin`.
|
nas chamadas REST; o Socket.IO usa `new URL(url).origin`.
|
||||||
- **Não rodar `prisma db push`** contra o banco `newwhats`: o schema já está alinhado com o código; o `db push`
|
|
||||||
só **dropa** tabelas extras de plugins (`sec_*` da *secretaria*, `janitor_logs`, `nanobana_usage`) — perda de dados.
|
|
||||||
|
|
||||||
## Conexões (VPS3, 10.99.0.3) — credenciais no `docker-compose.dev.yml`
|
## Conexões — credenciais no `docker-compose.dev.yml`
|
||||||
|
|
||||||
- **Banco:** `postgresql://newwhats:<senha>@10.99.0.3:5432/newwhats` (role `newwhats`; o role `clube67` **não**
|
- **Banco (isolado):** `postgresql://devadmin:<senha>@pgdev:5432/newwhats_dev` — banco `newwhats_dev` no
|
||||||
tem permissão nesse banco).
|
container **`pgdev`** (VPS4, rede docker **`soc`**; o backend-dev precisa estar na rede `soc` para resolver
|
||||||
- **Cache:** `redis://:<senha>@10.99.0.3:6379/1` (Dragonfly, DB index `/1` para não colidir com a prod).
|
o DNS `pgdev`). É um **clone** dos dados reais (~92k messages, ~10k contacts), feito com
|
||||||
|
`pg_dump` do `newwhats` (VPS3) → `pg_restore --no-owner --no-privileges` no `pgdev`.
|
||||||
|
Para repuxar/zerar, ver scripts em `/home/deploy/stack/pg-dev/` (padrão `_dev`/`_ref` do universal).
|
||||||
|
- **Cache:** `redis://:<senha>@10.99.0.3:6379/1` (Dragonfly VPS3, DB index `/1` — isolado da prod por index).
|
||||||
|
|
||||||
## Atenção — divergência código × PROD
|
## Atenção — divergência código × PROD
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user