31b3eb21b4
Build & Push Docker Images / test-backend (push) Successful in 44s
Build & Push Docker Images / test-frontend (push) Successful in 53s
Build & Push Docker Images / build-backend (push) Failing after 50s
Build & Push Docker Images / build-frontend (push) Successful in 54s
Users were wiped on container recreation because they shared the backend_data volume with ephemeral pharmacy/medicine data. Postgres gets its own named volume (postgres_data) that survives deploys. - Add postgres:16-alpine service + postgres_data volume to compose - Add pg + connect-pg-simple deps - userDbGet/userDbRun helpers: PG when PG_URL set, SQLite fallback - Sessions use connect-pg-simple when pgPool available - create-admin.js: PG-aware, SQLite fallback for local dev - push_subscriptions.user_id: plain INTEGER (cross-DB FK dropped) - Tests unchanged — no PG_URL in test env = SQLite fallback Set PG_PASSWORD in server .env before next deploy. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
18 lines
535 B
Bash
18 lines
535 B
Bash
PORT=3001
|
|
SESSION_SECRET=change-me-in-production
|
|
CORS_ORIGIN=http://localhost:3000
|
|
FARMACIAS_WEBHOOK_URL=
|
|
REDIS_HOST=localhost
|
|
REDIS_PORT=6379
|
|
REDIS_PASSWORD=
|
|
|
|
# PostgreSQL for user accounts (leave unset to fallback to SQLite — dev/test only)
|
|
PG_URL=postgresql://farmafinder:change-me@localhost:5432/farmafinder
|
|
PG_PASSWORD=change-me
|
|
|
|
# Web Push (VAPID). Generate with:
|
|
# node -e "import('web-push').then(w => console.log(w.default.generateVAPIDKeys()))"
|
|
VAPID_PUBLIC_KEY=
|
|
VAPID_PRIVATE_KEY=
|
|
VAPID_SUBJECT=mailto:admin@example.com
|