- Express backend with JWT auth, PostgreSQL, full CRUD APIs - React + Vite + TailwindCSS frontend with RTL Hebrew UI - Event Creation & Management (create/edit/delete/list events) - Participant Management (add/edit/delete/status tracking per event) - Budget Management (income/expense tracking with balance summary) - Docker Compose setup with PostgreSQL - /health endpoint with commit-id and DB status Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
37 lines
798 B
YAML
37 lines
798 B
YAML
version: '3.8'
|
|
|
|
services:
|
|
app:
|
|
build: .
|
|
expose:
|
|
- "3000"
|
|
environment:
|
|
- DATABASE_URL=postgresql://postgres:postgres@postgres:5432/airewit
|
|
- JWT_SECRET=${JWT_SECRET:-airewit-jwt-secret-change-in-production}
|
|
- NODE_ENV=production
|
|
- PORT=3000
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
|
|
postgres:
|
|
image: postgres:15-alpine
|
|
environment:
|
|
- POSTGRES_USER=postgres
|
|
- POSTGRES_PASSWORD=postgres
|
|
- POSTGRES_DB=airewit
|
|
expose:
|
|
- "5432"
|
|
volumes:
|
|
- postgres_data:/var/lib/postgresql/data
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U postgres"]
|
|
interval: 5s
|
|
timeout: 5s
|
|
retries: 5
|
|
restart: unless-stopped
|
|
|
|
volumes:
|
|
postgres_data:
|