infra folder, swagger init, error handler
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
# Usa una imagen de Node.js 22 basada en Alpine
|
||||
FROM node:22.10.0-alpine
|
||||
|
||||
# Establece el directorio de trabajo
|
||||
WORKDIR /app
|
||||
|
||||
# Instala las dependencias para compilar bcrypt en Alpine
|
||||
RUN apk add --no-cache python3 make g++
|
||||
|
||||
# Copia los archivos de dependencias y los instala
|
||||
COPY package.json package-lock.json ./
|
||||
RUN npm install
|
||||
|
||||
# Copia el resto del código fuente
|
||||
COPY . .
|
||||
|
||||
# Expone el puerto 3000
|
||||
EXPOSE 3051
|
||||
|
||||
# Comando por defecto para iniciar la aplicación en desarrollo
|
||||
CMD ["npm", "run", "start:dev"]
|
||||
@@ -0,0 +1,47 @@
|
||||
services:
|
||||
database:
|
||||
image: mariadb:latest
|
||||
container_name: carga_db
|
||||
restart: always
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: root
|
||||
MYSQL_DATABASE: carga_test
|
||||
MYSQL_USER: user
|
||||
MYSQL_PASSWORD: password
|
||||
ports:
|
||||
- "3356:3306"
|
||||
volumes:
|
||||
- mariadb_data:/var/lib/mysql
|
||||
- ./init.sql:/docker-entrypoint-initdb.d/init.sql
|
||||
- ./init_insert_data.sql:/docker-entrypoint-initdb.d/init_insert_data.sql
|
||||
|
||||
|
||||
networks:
|
||||
- carga_network
|
||||
|
||||
api:
|
||||
|
||||
build:
|
||||
context: ..
|
||||
dockerfile: infra/Dockerfile
|
||||
|
||||
container_name: carga_api
|
||||
|
||||
restart: always
|
||||
depends_on:
|
||||
- database
|
||||
env_file:
|
||||
- ../.env
|
||||
|
||||
ports:
|
||||
- "3051:3051"
|
||||
networks:
|
||||
- carga_network
|
||||
|
||||
|
||||
|
||||
volumes:
|
||||
mariadb_data:
|
||||
|
||||
networks:
|
||||
carga_network:
|
||||
Reference in New Issue
Block a user