Files
econ/docker-compose.yml
Renato d31575a143 Initial commit: Plataforma de Economía
Features:
- React 18 + TypeScript frontend with Vite
- Go + Gin backend API
- PostgreSQL database
- JWT authentication with refresh tokens
- User management (admin panel)
- Docker containerization
- Progress tracking system
- 4 economic modules structure

Fixed:
- Login with username or email
- User creation without required email
- Database nullable timestamps
- API response field naming
2026-02-12 01:30:57 +01:00

56 lines
1.2 KiB
YAML

services:
postgres:
image: postgres:16-alpine
container_name: econ-postgres
environment:
POSTGRES_USER: ${DB_USER:-econ_user}
POSTGRES_PASSWORD: ${DB_PASSWORD:-econ_pass}
POSTGRES_DB: ${DB_NAME:-econ_db}
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${DB_USER:-econ_user} -d ${DB_NAME:-econ_db}"]
interval: 10s
timeout: 5s
retries: 5
backend:
build:
context: ./backend
dockerfile: Dockerfile
container_name: econ-backend
environment:
DB_HOST: econ-postgres
DB_PORT: 5432
DB_USER: ${DB_USER:-econ_user}
DB_PASSWORD: ${DB_PASSWORD:-econ_pass}
DB_NAME: ${DB_NAME:-econ_db}
JWT_SECRET: ${JWT_SECRET:-your-secret-key-change-in-production}
SERVER_PORT: 8080
ports:
- "8080:8080"
networks:
- caddy
depends_on:
postgres:
condition: service_healthy
frontend:
build:
context: ./frontend
dockerfile: Dockerfile
container_name: econ-frontend
ports:
- "3002:80"
networks:
- caddy
depends_on:
- backend
volumes:
postgres_data:
networks:
caddy:
external: true