cambio estructura de datos fix

This commit is contained in:
juanjo
2026-04-11 13:20:54 +02:00
parent c5f1b4e131
commit 69a35ecf58
5 changed files with 14 additions and 22 deletions

29
deployments/Dockerfile Normal file
View File

@@ -0,0 +1,29 @@
# Usamos una imagen ligera de Python
FROM python:3.12-slim
# Evitar que Python genere archivos .pyc y que el buffer se sature
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
# Directorio de trabajo
WORKDIR /app
# Instalar dependencias del sistema necesarias
RUN apt-get update && apt-get install -y \
libpq-dev \
gcc \
gettext \
&& rm -rf /var/lib/apt/lists/*
# Instalar dependencias de Python
COPY requirements.txt /app/
RUN pip install --no-cache-dir -r requirements.txt
# Copiar el resto del código
COPY . /app/
# Exponer el puerto de Django
EXPOSE 8000
# Comando por defecto para arrancar (usaremos manage.py en dev y gunicorn en prod)
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]

36
deployments/Jenkinsfile vendored Normal file
View File

@@ -0,0 +1,36 @@
pipeline {
agent any
stages {
stage('Limpieza y Preparación') {
steps {
echo 'Bajando la versión anterior para actualizar...'
// Detenemos contenedores viejos si existen para evitar conflictos
sh 'docker compose down || true'
}
}
stage('Construcción (Build)') {
steps {
echo 'Construyendo la imagen de la API Django...'
// Construimos la imagen usando el Dockerfile
sh 'docker compose build'
}
}
stage('Despliegue (Deploy)') {
steps {
echo 'Arrancando el contenedor en producción...'
// Levantamos el contenedor en segundo plano
sh 'docker compose up -d'
}
}
stage('Verificación') {
steps {
echo 'Listando contenedores activos:'
sh 'docker ps'
}
}
}
}

View File

@@ -0,0 +1,12 @@
version: '3.8'
networks:
# Usamos la red que creamos al principio para que el Proxy lo vea
frontend:
external: true
services:
web:
build: .
container_name: django_app_dev
restart

View File

@@ -0,0 +1,2 @@
Django==5.0.3
psycopg2-binary==2.