Instalación#

Esta sección cubre cómo instalar y configurar Construbot para el desarrollo. Puedes elegir entre desarrollo basado en Docker (recomendado) o desarrollo local.

Descripción general#

Construbot admite dos métodos de instalación:

  1. Desarrollo basado en Docker (recomendado): entorno en contenedores con todas las dependencias

  2. Desarrollo local - Configuración del entorno virtual tradicional

Ambos métodos proporcionan un entorno de desarrollo completo con:

  • base de datos postgresql

  • Redis para almacenamiento en caché y apio

  • MailHog para pruebas de correo electrónico (solo Docker)

  • Todas las dependencias de Python

Requisitos previos#

Método acoplable#

Requerido:

  • Docker Desktop (incluye Docker y Docker Compose)

  • git

  • Make (normalmente preinstalado en macOS/Linux)

Versiones de escritorio de Docker:

Requisitos mínimos:

  • 4 GB de RAM asignados a Docker

  • 10 GB de espacio libre en disco

  • Docker Compose v2.0+

Método local#

Requerido:

  • Python 3.9.17 o superior

  • PostgreSQL 12+

  • Redis 6+

  • git

  • pip y virtualenv

Guías de instalación:

  • macOS: Utilice Homebrew: brew install python@3.9 postgresql redis

  • Ubuntu/Debian: sudo apt-get install python3.9 postgresql redis-server

  • Windows: Descargue instaladores de sitios web oficiales

Inicio rápido#

Método Docker (5 minutos)#

# 1. Clone repository
git clone https://github.com/javier-llamas/construbot.git
cd construbot

# 2. Build and start development environment
make buildev

# 3. Create superuser
make superuser

# 4. Access application
open http://localhost:8000

¡Eso es todo! La aplicación ahora se está ejecutando con:

Método Local (10 minutos)#

# 1. Clone repository
git clone https://github.com/javier-llamas/construbot.git
cd construbot

# 2. Create virtual environment
python3.9 -m venv venv
source venv/bin/activate  # On Windows: venv\\Scripts\\activate

# 3. Install dependencies
pip install -r requirements/local.txt

# 4. Set up environment variables
cp .env.example .env
# Edit .env with your database credentials

# 5. Run migrations
python manage.py migrate

# 6. Create superuser
python manage.py createsuperuser

# 7. Run development server
make runserver

# 8. Access application
open http://localhost:8000

Próximos pasos#

Después de la instalación:

  1. Completar datos de prueba: Ejecute make poblar para agregar datos de muestra

  2. Explore el panel: Inicie sesión con sus credenciales de superusuario

  3. Lea los documentos de arquitectura: Descripción general

  4. Verifique las opciones de configuración: configuración

Guías detalladas#

Solución de problemas#

Problemas con Docker#

Error «Puerto ya en uso»:

# Find and stop conflicting services
lsof -ti:8000 | xargs kill -9  # macOS/Linux
# Or change ports in docker-compose.yml

«No queda espacio en el dispositivo»:

# Clean up Docker
make cleanhard  # Warning: Removes all images and volumes
docker system prune -a

Los contenedores no se inician:

# Check logs
docker-compose logs

# Rebuild from scratch
make clean
make buildev

Problemas de instalación local#

«ejecutable pg_config no encontrado»:

# Install PostgreSQL development headers
# macOS: brew install postgresql
# Ubuntu: sudo apt-get install libpq-dev

«Python.h: No existe tal archivo»:

# Install Python development headers
# Ubuntu: sudo apt-get install python3.9-dev
# macOS: Should be included with Python

Errores de conexión a la base de datos:

Verifique su archivo .env:

DATABASE_URL=postgresql://user:password@localhost:5432/construbot_dev

Asegúrese de que PostgreSQL se esté ejecutando:

# macOS: brew services start postgresql
# Ubuntu: sudo service postgresql start

Variables de entorno#

Falta el archivo .env:

Copie el archivo de ejemplo:

cp .env.example .env

Variables requeridas no configuradas:

Variables mínimas requeridas:

DJANGO_SETTINGS_MODULE=construbot.config.settings.local
DJANGO_DEBUG=True
DATABASE_URL=postgresql://...
DJANGO_SECRET_KEY=your-secret-key-here

Consulte Configuración para obtener una referencia completa.

Preguntas comunes#

P: ¿Qué método debo utilizar?

R: Se recomienda Docker para la mayoría de los desarrolladores. Proporciona:

  • Entorno consistente en todas las plataformas

  • No es necesario instalar PostgreSQL/Redis localmente

  • Fácil limpieza («hacer limpio»)

  • Más cerca del entorno de producción

Utilice el desarrollo local si:

  • Ya tienes instalado PostgreSQL/Redis

  • Necesitas integrarte con otros servicios locales.

  • Prefieres el desarrollo tradicional de Python

P: ¿Puedo cambiar entre métodos?

R: ¡Sí! La base del código es la misma. Simplemente cambie la variable de entorno USE_DOCKER.

P: ¿Cómo actualizo mi instalación?

A:

git pull
# Docker: make buildev
# Local: pip install -r requirements/local.txt
python manage.py migrate

P: ¿Dónde se almacenan los datos de la base de datos?

A:

  • Docker: En un volumen de Docker llamado construbot_postgres_data

  • Local: En su directorio de datos de PostgreSQL (depende de la instalación)

Para restablecer la base de datos: make cleandb (Docker) o elimine/recree la base de datos manualmente (local).

Ver también#