Add Docker Compose, environment example, and README
This commit is contained in:
10
.env.example
Normal file
10
.env.example
Normal 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
98
README.md
Normal 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
25
docker-compose.yml
Normal 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
|
||||||
Reference in New Issue
Block a user