Add Docker Compose, environment example, and README

This commit is contained in:
mberlin
2026-03-18 15:01:04 -03:00
parent 9d4fc09c51
commit 56a926b10b
3 changed files with 133 additions and 0 deletions

10
.env.example Normal file
View File

@@ -0,0 +1,10 @@
# Database Configuration
DB_HOST=localhost
DB_PORT=5432
DB_USER=postgres
DB_PASSWORD=postgres
DB_NAME=planner
# Application
PORT=3000
NODE_ENV=development

98
README.md Normal file
View File

@@ -0,0 +1,98 @@
# Planner - Event Management System
## Requisitos Previos
- Node.js 18 o superior
- Docker y Docker Compose
- npm o yarn
## Instalación
1. Clonar el repositorio:
```bash
git clone https://gitea.solicita.cl/mberlin/evento.git
cd evento
```
2. Instalar dependencias:
```bash
npm install
```
3. Configurar variables de entorno:
```bash
cp .env.example .env
```
4. Iniciar la base de datos con Docker:
```bash
docker-compose up -d
```
5. Ejecutar migraciones (si las hay):
```bash
npm run migration:run
```
## Desarrollo
Iniciar el servidor en modo desarrollo:
```bash
npm run start:dev
```
La aplicación estará disponible en `http://localhost:3000`
## Scripts Disponibles
- `npm run start` - Inicia la aplicación
- `npm run start:dev` - Inicia en modo desarrollo con hot-reload
- `npm run build` - Construye la aplicación para producción
- `npm run start:prod` - Inicia la aplicación en modo producción
## Base de Datos
El proyecto usa PostgreSQL como base de datos. Docker Compose configura automáticamente:
- **Host**: localhost
- **Puerto**: 5432
- **Usuario**: postgres
- **Contraseña**: postgres
- **Base de datos**: planner
### Comandos Docker útiles
```bash
# Iniciar servicios
docker-compose up -d
# Detener servicios
docker-compose down
# Ver logs
docker-compose logs -f postgres
# Reiniciar servicios
docker-compose restart
# Eliminar todo (incluyendo volúmenes)
docker-compose down -v
```
## Estructura del Proyecto
```
src/
├── core/ # Módulo principal con auth, database, notificaciones
├── admin/ # Panel de administración
├── gift/ # Gestión de regalos
├── guest/ # Gestión de invitados
└── todo/ # Lista de tareas
```
## Tecnologías
- NestJS - Framework backend
- MikroORM - ORM para PostgreSQL
- TypeScript
- PostgreSQL

25
docker-compose.yml Normal file
View File

@@ -0,0 +1,25 @@
version: '3.8'
services:
postgres:
image: postgres:16-alpine
container_name: planner-postgres
restart: unless-stopped
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: planner
PGDATA: /var/lib/postgresql/data/pgdata
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 10s
timeout: 5s
retries: 5
volumes:
postgres_data:
driver: local