cambio estructura de datos fix
This commit is contained in:
29
deployments/Dockerfile
Normal file
29
deployments/Dockerfile
Normal 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
36
deployments/Jenkinsfile
vendored
Normal 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'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
12
deployments/docker-compose.yml
Normal file
12
deployments/docker-compose.yml
Normal 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
|
||||
2
deployments/requirements.txt
Normal file
2
deployments/requirements.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
Django==5.0.3
|
||||
psycopg2-binary==2.
|
||||
Reference in New Issue
Block a user