bunker-admin a77306fac2 Initial v2 commit: complete rebuild with unified API + React admin
Phase 1-14 complete:
- Unified Express.js API (TypeScript, Prisma ORM, PostgreSQL 16)
- React Admin GUI (Vite + Ant Design + Zustand)
- JWT auth with refresh tokens
- Influence: Campaigns, Representatives, Responses, Email Queue
- Map: Locations, Cuts, Shifts, Canvassing System
- NAR data import infrastructure (2025 format)
- Listmonk newsletter integration
- Landing page builder (GrapesJS)
- MkDocs + Code Server integration
- Volunteer portal with GPS tracking
- Monitoring stack (Prometheus, Grafana, Alertmanager)
- Pangolin tunnel integration

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-11 10:05:04 -07:00

2.1 KiB

PostgreSQL Database

Reliable database backend for applications.

Overview

PostgreSQL is a powerful, open-source relational database system. In Changemaker Lite, it serves as the backend database for Listmonk and can be used by other applications requiring persistent data storage.

Features

  • ACID compliance
  • Advanced SQL features
  • JSON/JSONB support
  • Full-text search
  • Extensibility
  • High performance
  • Reliability and data integrity

Access

  • Default Port: 5432
  • Host: listmonk-db (internal container name)
  • Database: Set via POSTGRES_DB environment variable
  • Username: Set via POSTGRES_USER environment variable
  • Password: Set via POSTGRES_PASSWORD environment variable

Configuration

Environment Variables

  • POSTGRES_USER: Database username
  • POSTGRES_PASSWORD: Database password
  • POSTGRES_DB: Database name

Health Checks

The PostgreSQL container includes health checks to ensure the database is ready before dependent services start.

Data Persistence

Database data is stored in a Docker volume (listmonk-data) to ensure persistence across container restarts.

Connecting to the Database

From Host Machine

You can connect to PostgreSQL from your host machine using:

psql -h localhost -p 5432 -U [username] -d [database]

From Other Containers

Other containers can connect using the internal hostname listmonk-db on port 5432.

Backup and Restore

Backup

docker exec listmonk-db pg_dump -U [username] [database] > backup.sql

Restore

docker exec -i listmonk-db psql -U [username] [database] < backup.sql

Monitoring

Monitor database health and performance through:

  • Container logs: docker logs listmonk-db
  • Database metrics and queries
  • Connection monitoring

Security Considerations

  • Use strong passwords
  • Regularly update PostgreSQL version
  • Monitor access logs
  • Implement regular backups
  • Consider network isolation

Official Documentation

For comprehensive PostgreSQL documentation: