Service → Database mapping
Source of truth. Před jakýmkoli DB dotazem VŽDY zkontroluj zde, ne .env.example.
pg-alfa (Hetzner PG 17 + pgBouncer)
- Tailscale IP: 100.125.3.121
- Public IP: 46.224.173.7 (jen pro Cerebro/Cortex/Fess které nemají Tailscale routing)
- DNS: pg-alfa.studio60.cz
- Detaily serveru: postgres.md
| Služba | DB name | DB user | Port | Server |
|---|---|---|---|---|
| S60Auth hub | s60_auth_hub |
s60_auth_hub_user |
6432 | hub-alfa |
| S60Auth prod | s60_auth_prod |
s60_auth_prod_user |
6432 | prod-alfa |
| BadWolf hub | s60_badwolf_hub |
s60_badwolf_hub_user |
5432 | hub-alfa |
| BadWolf prod | s60_badwolf_prod |
s60_badwolf_prod_user |
5432 | prod-alfa |
| Pulse dev | s60_pulse_dev |
s60_pulse_dev_user |
6432 | cerebro |
| Pulse hub | s60_pulse_hub |
s60_pulse_hub_user |
6432 | hub-alfa |
| Pulse prod | s60_pulse_prod |
s60_pulse_prod_user |
6432 | prod-alfa |
| BillIt hub | s60_billit_hub |
s60_billit_hub_user |
6432 | hub-alfa |
| BillIt prod | s60_billit_prod |
s60_billit_prod_user |
6432 | prod-alfa |
| S60Mail hub | s60_mail_hub |
s60_mail_hub_user |
6432 | hub-alfa |
| S60Mail prod | s60_mail_prod |
s60_mail_prod_user |
6432 | prod-alfa |
| N8N hub | s60_n8n_hub |
s60_n8n_hub_user |
5432 | hub-alfa |
| N8N prod | s60_n8n_prod |
s60_n8n_prod_user |
5432 | prod-alfa |
| GlitchTip | glitchtip |
glitchtip |
6432 | sentinel + prod |
| CS pipeline | bwcs |
s60_cs_user (owner) |
6432 | cortex |
| S60AI (single-env) | s60_ai_prod |
s60_ai_prod_user |
6432 (5432 funguje též) | s60ai VPS (Hetzner, Tailscale) |
| Hive Scrapper | hive_scrapper |
hive_scrapper_user |
5432 | Mac Mini (Libor) |
Port pravidla
- 6432 (pgBouncer) — default pro většinu služeb (transaction pooling, auth_query)
- 5432 (PG přímo) — jen tam, kde služba potřebuje featury, které pgBouncer nepodporuje:
- N8N —
statement_timeoutstartup parameter - BadWolf — SSL hardcoded (pgBouncer nepodporuje SSL passthrough přímo)
Debug DB users
Některé prod DB mají RO debug uživatele (NOLOGIN ve výchozím stavu). Jak povolit/zablokovat → postgres.md § Debug users.
| Existující debug user | DB | Heslo |
|---|---|---|
s60_billit_debug |
s60_billit_prod |
/root/secrets/billit/.env.prod.debug |
Kde najít connection stringy
/root/secrets/<service>/.env.<env>na sentinelu pro připravu deployů- Real-time check uvnitř kontejneru:
docker exec <container> env | grep DB_
Kritická pravidla
- NIKDY nevěř
.env.example— vždy/root/secrets/(orthogonal:feedback_no_env_example.md) - PG přístup = vždy schválit s Liborem — sentinel nesmí samostatně přidávat UFW/pg_hba (orthogonal:
feedback_pg_access_approval.md) - DO Managed PG je DEPRECATED — všechny prod služby migrovány na pg-alfa (Hetzner)
Změny
- 2026-04-10: Auth hub+prod migrovány na pg-alfa (
s60_auth_hub_user+s60_auth_prod_user, smazány legacys60_hub_user+s60_prod_user) - 2026-04-10: GlitchTip prod migrován na pg-alfa
- 2026-04-10: pgBouncer přepsán na
auth_query(žádný userlist.txt) - 2026-03-20:
s60_pulse→s60_pulse_dev(rename)